【问题标题】:WPF ComboBox with editable textbox as an item将可编辑文本框作为项目的 WPF ComboBox
【发布时间】:2011-07-31 23:32:51
【问题描述】:

我希望有一个只有两个项目的组合框:

-----------
|  Other.. |
------------
|  TextBox |
------------

文本框表示可编辑的物理文本框,Other.. 只是一个常规组合框项。

谁能帮我看看我需要如何编辑它。

我尝试使用堆栈面板更改 Combbox.itemtemplate,然后添加一个文本框,但它没有显示出来,这也阻止了我在控件中拥有常规组合框项目的机会。

提前致谢。

【问题讨论】:

    标签: wpf xaml combobox textbox


    【解决方案1】:

    你试过设置ComboBox.IsEditable = true吗?然后您只需要一项和ComboBox.Text 属性。

    【讨论】:

      【解决方案2】:

      不太清楚是什么问题,你试过这个吗:

      <ComboBox>
          <ComboBoxItem>Other</ComboBoxItem>
          <TextBox>TextBox</TextBox>
      </ComboBox>
      

      如果这不是您想要的,请说明您到底需要什么...


      (TextBox-item 可能很难选择,所以给它一个可以点击的标签可能会很有趣)

      <ComboBox>
          <ComboBoxItem>Normal Item</ComboBoxItem>
          <StackPanel Orientation="Horizontal">
              <TextBlock Text="Other: " VerticalAlignment="Center"/>
              <TextBox>Enter text...</TextBox>
          </StackPanel>
      </ComboBox>
      

      【讨论】:

      • 谢谢,我不知道这很容易,我对我需要做什么感到困惑。再次感谢
      • 不客气,很高兴它有帮助 :) 作为旁注,ComboBox 将围绕已经不是 ComboBoxItem 的任何内容创建一个 ComboBoxItem,但上述语法与 &lt;ComboBoxItem&gt;&lt;TextBox.../&gt;&lt;/ComboBoxItem&gt; 不同,因为如果您让 ComboBox 为您创建此容器,ComboBox.Items 集合仍将直接公开内容而不是 ComboBoxItem。
      猜你喜欢
      • 1970-01-01
      • 2023-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-11
      相关资源
      最近更新 更多