Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF组合框允许单击外部项目_C#_.net_Wpf_Combobox - Fatal编程技术网

C# WPF组合框允许单击外部项目

C# WPF组合框允许单击外部项目,c#,.net,wpf,combobox,C#,.net,Wpf,Combobox,WPF Combobox的默认行为是当它展开时,用户单击它之外的任何位置,然后它就会折叠 是否有可能使组合框在展开时不会停用其他控件?因此,我可以单击它之外的任何内容,只有在右边有三角形的小按钮上准确按下时,它才会折叠/展开。您可以实现这样的行为,而无需使用扩展器和列表视图来覆盖组合框的模板。例如: <Expander> <ListView> <ListViewItem Content="1"/> <ListViewItem

WPF Combobox的默认行为是当它展开时,用户单击它之外的任何位置,然后它就会折叠


是否有可能使组合框在展开时不会停用其他控件?因此,我可以单击它之外的任何内容,只有在右边有三角形的小按钮上准确按下时,它才会折叠/展开。

您可以实现这样的行为,而无需使用
扩展器和
列表视图来覆盖
组合框的模板。例如:

<Expander>
   <ListView>
      <ListViewItem Content="1"/>
      <ListViewItem Content="2"/>
      <ListViewItem Content="3"/>
      <ListViewItem Content="4"/>
      <ListViewItem Content="5"/>
   </ListView>
</Expander>
使用样式的示例如下:

<ComboBox Style="{DynamicResource ComboBoxStyle1}" >                
   <ComboBoxItem Content="1"/>
   <ComboBoxItem Content="2"/>
   <ComboBoxItem Content="3"/>
</ComboBox>


谢谢,这很有意义,但我必须根据需要使用ComboBox控件。有没有可能在不更改控件的情况下使其工作?嗯,谢谢,但是,这是一个非常复杂的解决方案,我无法将其与我的应用程序的当前现有逻辑合并(还有一个非常复杂的样式继承逻辑)。我想我会讨论是否有可能不重做这样的组合框,让它保持原样,因为我认为它不值得这么多的努力。无论如何,谢谢你的回答。
<ComboBox Style="{DynamicResource ComboBoxStyle1}" >                
   <ComboBoxItem Content="1"/>
   <ComboBoxItem Content="2"/>
   <ComboBoxItem Content="3"/>
</ComboBox>