1

我正在开发一个 WPF 项目,并开始开发该Ribbon区域。我只是放了一个RibbonMenuButton并在其中添加了三个RibbonTextBox。我希望这些文本框从用户那里检索一些数据。到目前为止一切都很好。

<rb:RibbonMenuButton LargeImageSource="/image.png" Label="Settings"   >

    <rb:RibbonTextBox Label="Field 01:" Text="{Binding Field01 }" />
    <rb:RibbonTextBox Label="Field 02:" Text="{Binding Field02 }" />
    <rb:RibbonTextBox Label="Field 03:" Text="{Binding Field03 }" />

</rb:RibbonMenuButton>

我的问题是它变成RibbonTextBox了一个菜单项,即我可以单击它并选择它。

但我想避免这种行为,我只想有一个"unselectable" RibbonTextBox

有没有办法做到这一点?

先感谢您。

4

2 回答 2

1

在这里找到了解决方案

<Style TargetType="{x:Type rb:RibbonMenuItem}">
     <Setter Property="Template">
         <Setter.Value>
             <ControlTemplate TargetType="{x:Type rb:RibbonMenuItem}">
                 <ContentPresenter ContentTemplate="{TemplateBinding HeaderTemplate}" 
                     Content="{TemplateBinding Header}" Grid.Column="1" 
                     ContentStringFormat="{TemplateBinding HeaderStringFormat}" 
                     ContentSource="Header" 
                     Margin="{TemplateBinding Padding}" 
                     RecognizesAccessKey="True" 
                     VerticalAlignment="Center"/>
             </ControlTemplate>
         </Setter.Value>
     </Setter>
 </Style>

这对我来说效果很好。

于 2012-08-27T20:37:57.610 回答
0

这些通常称为Labels. 但是代替使用适当的控件,它RibbonTextBox具有两个IsReadOnly属性,这将使其可选择(即用于复制/粘贴)但不可编辑。或者IsEnabled这将使它完全非交互式。

我认为这IsEnabled也会阻止你点击它,但我不能 100% 确定这一点。

于 2012-08-22T19:40:29.747 回答