フォントとフォントサイズに2つのコンボボックスがあります。私はそれをクリックすると、フォントサイズやフォントを私のrichtextboxで変更します。今私はそれが言葉のように動作するようにします。移動した行が別のフォントまたはサイズになっている場合。それを検出し、現在の行のフォントとサイズに一致するようにcomboxesを変更する必要があります。 Somoeoneはこの同じ質問をして、私にとってはうまくいかない結果を得ました。私はそれが私の答えだったが、私は何も選択しなかったときSelectionFontは、任意の違いを確認する方法を見ることができなかったという希望を差し出したwinformsを使用してC#でリッチテキストボックスの特定の行のフォントサイズを取得する方法
private void richTextBox1_SelectionChanged(object sender, EventArgs e)
{
MessageBox.Show("we got here"); // this is my added part to let me know if the code is even getting executed. It is not.
richTextBox1.SelectionStart = 1;
richTextBox1.SelectionLength = 1;
comboBox1.Text = richTextBox1.SelectionFont.ToString();
comboBox2.Text = null;
comboBox2.Text = richTextBox1.SelectionFont.Size.ToString();
}
次のようでした。また、richTextBox1_SelectionChangedイベントは、上矢印または下矢印を使用してドキュメントを移動するときに呼び出されていないようです。問題はコンボボックスではなく、問題は、ドキュメント内を矢印のように、フォントとサイズがキャレット位置にあるかどうかを知る必要があるため、コンボボックスを変更して一致させるイベントを発生させることができるということです。
問題は選択変更イベントが呼び出されないことです。私の文書のどこにいても、私が最後に使用したフォントが表示されます。 – Larryrl
それはあなたのRichTextBoxとイベント処理に関連するものです。私のテストの例では正常に動作します。 http://s000.tinyupload.com/index.php?file_id=87205811287792650699 – MarkusEgle
あなたの例を見て、すべてのものを私のイベントにコピーしましたが、それでも私の解決策では動作しませんでしたcomboBox1.SelectedIndex = 0; comboBox2.SelectedIndex = 0; はSelectIndexが0になり得ないという例外をスローします – Larryrl