Men om din text är både Fet och kursiv så kommer inget av dina vilkorssatser att vara sanna och ingen knapp kommer att vara nertryckt.
Jag misstänker att din SelectonFont.Style kan ha flera värden isig och du måste kontrollera detta och inte bara försöka jämföra mitt ett värd.
bool bfet = (((richTextBoxEx1.SelectionFont.Style & FontStyle.Bold) == FontStyle.Bold) ?
toolStripButtonFet.Checked = true : toolStripButtonFet.Checked = false);
bool bkursiv = (((richTextBoxEx1.SelectionFont.Style & FontStyle.Italic) == FontStyle.Italic) ?
toolStripButtonKursiv.Checked = true : toolStripButtonKursiv.Checked = false);
bool bunderline = (((richTextBoxEx1.SelectionFont.Style & FontStyle.Underline) ==
FontStyle.Underline) ? toolStripButtonUnderstuket.Checked = true :
toolStripButtonUnderstuket.Checked = false);
Med hjälp av & gör du en bitvis AND och kan kontrollera om din SelectionFont.Style innehåller just det du vill kontrollera efter. Men som sagt det förutsätter att SelectionFont.Style kan innehålla flera värden, men det bör den kunna...
Sen kan du skriva om din kod så den blir lite kortare...
bool bfet = toolStripButtonFet.Checked = ((richTextBoxEx1.SelectionFont.Style & FontStyle.Bold) == FontStyle.Bold)
Och då toolStripButtonFet.Checked alltid kommer ha samma värde som bfet så finns det ju knappast någon anledning till att ha bfet med och du kan förkorta din kod ännu mer..
toolStripButtonFet.Checked = ((richTextBoxEx1.SelectionFont.Style & FontStyle.Bold) == FontStyle.Bold)
- M