如何防止组合框从wpf中的列表中选择一个项目?

时间:2009-10-13 11:29:28

标签: wpf combobox

此组合框应显示绑定值作为其文本,并且不能禁用。 我只是想阻止用户更改显示的值。

5 个答案:

答案 0 :(得分:3)

    comboBoxName.IsHitTestVisible = false;
    comboBoxName.Focusable = false;

一起使用这两行代码。

编辑注意:编辑以解决skypecakes

描述的问题

答案 1 :(得分:1)

根据MSDN,您需要

IsReadOnly = true;
IsEditable = false;

请参阅备注

下的http://msdn.microsoft.com/en-us/library/system.windows.controls.combobox.isreadonly.aspx

编辑:实际上,我不再确定了

我建议使用样式在PART_EditableTextBox

上将ReadOnly设置为true

答案 2 :(得分:1)

试试 XAML

OriginId    DestinationId   DestinationName     TotalJourneyTime
   1             1              Destination 1       10
   2             3              Destination 3       40

C#

IsEnabled="False"

答案 3 :(得分:1)

如果你设置IsEnabled = false,这应该有效。在你的XAML中它看起来像这样



<ComboBox IsEnabled="False"></ComboBox>
&#13;
&#13;
&#13;

答案 4 :(得分:-3)

你的问题不清楚。

组合框具有依赖项属性IsEditable,如果设置为false,则无法编辑所选项目。默认情况下这是错误的。

如果您正在讨论组合框弹出列表中的项目,那么它也应该是“不可编辑的”,除非您更改了组合框的数据模板以包含一个文本框列表,这将导致列表允许每个项目可编辑。