我正在使用dockpanel
創建一個簡單的wysiwyg編輯器,其中包含用於更改字體大小等的一些按鈕以及作爲主要區域的richtextbox
。我可以突出顯示文本,然後使用按鈕更改字體大小和系列。但是,當我點擊「工具欄」RichTextBox
失去焦點,選定的文本不再突出顯示。我發現了幾個解決方案,例如設置e.handled =true;
丟失的焦點事件,這個工作,但如果字體大小改變,例如,文字現在大於突出顯示。有更好的解決方案嗎?富文本框在焦點丟失時保持選定高亮顯示
下面是一些精簡代碼:
<DockPanel>
<DockPanel >
<ToggleButton Height="24" Margin="3" Name="Bold">
<TextBlock FontWeight="ExtraBold" Text="B" />
</ToggleButton>
<ToggleButton Height="24" Margin="3" Name="Italic">
<TextBlock FontStyle="Italic" Text="I" />
</ToggleButton>
<ToggleButton Height="24" Margin="3" Name="Underline">
<TextBlock TextDecorations="Underline" Text="U" />
</ToggleButton>
<ComboBox Height="24" Margin="3" Name="FontFamily" Width="150" SelectionChanged="FontFamily_SelectionChanged"/>
<ComboBox Height="24" Margin="3" Name="FontSize" Width="50" IsEditable="True" TextBoxBase.TextChanged="FontSize_TextChanged" />
</DockPanel>
</DockPanel>
<RichTextBox Name="Editor" />
這不適用於我的情況。這也意味着需要將相同的代碼應用於所有按鈕/組合框事件。這似乎非常多餘。 – user1336827 2015-04-02 16:33:55