我是WPF新手,並且遇到問題。我想只在列表框的en元素被選中時才啓用按鈕,否則它必須被禁用。我嘗試了簡單的驗證規則,但它不起作用。任何人都可以給我一個提示嗎? Ty如何在列表框上使用WPF驗證規則以啓用「確定」按鈕
回答
您不使用ValidationRule來啓用按鈕,但您可以使用帶有觸發器的Button樣式,該觸發器綁定到ListBox的SelectedItem屬性,並將Button的IsEnabled屬性設置爲false,如果SelectedItem屬性爲ListBox中返回一個空引用,如:
<ListBox x:Name="lb">
<ListBoxItem>1</ListBoxItem>
<ListBoxItem>2</ListBoxItem>
<ListBoxItem>3</ListBoxItem>
</ListBox>
<Button Content="Button">
<Button.Style>
<Style TargetType="Button">
<Style.Triggers>
<DataTrigger Binding="{Binding SelectedItem, ElementName=lb}" Value="{x:Null}">
<Setter Property="IsEnabled" Value="False" />
</DataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
好吧,這個效果很好TY。但是我必須在滿足2個條件時啓用該按鈕(文本框不爲空,並且選擇了列表框的一個項目)。我怎樣才能做到這一點?
您可以添加另一個觸發:
<ListBox x:Name="lb">
<ListBoxItem>1</ListBoxItem>
<ListBoxItem>2</ListBoxItem>
<ListBoxItem>3</ListBoxItem>
</ListBox>
<TextBox x:Name="txt" />
<Button Content="Button">
<Button.Style>
<Style TargetType="Button">
<Style.Triggers>
<DataTrigger Binding="{Binding SelectedItem, ElementName=lb}" Value="{x:Null}">
<Setter Property="IsEnabled" Value="False" />
</DataTrigger>
<DataTrigger Binding="{Binding Text.Length, ElementName=txt}" Value="0">
<Setter Property="IsEnabled" Value="False" />
</DataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
好的,這很有效。但是我必須在滿足2個條件時啓用該按鈕(文本框不爲空,並且選擇了列表框的一個項目)。我怎樣才能做到這一點? –
您可以添加另一個觸發器。請參閱我編輯的答案。請記住在解決原始問題後接受答案,然後問您是否有其他問題。 – mm8
這完美的作品!謝謝^^ –
- 1. WPF - 如何使用驗證規則檢查RadioButton啓用按鈕
- 2. 啓用禁用WPF中的驗證驗證按鈕
- 3. JavaScript文本框驗證啓用按鈕
- 4. 如何在驗證按鈕時啓用/禁用按鈕?
- 5. 使用按鈕滾動列表框WPF
- 6. IDataErrorInfo WPF驗證規則/組
- 7. 如何使用WPF ViewModel中的模型驗證規則
- 8. WPF:綁定到驗證規則的DependencyProperty
- 9. 如何在Silverlight中的保存按鈕上啓用驗證?
- 10. 驗證在WPF - 自定義的驗證規則或IDataErrorInfo的
- 11. 如果勾選複選框,啓用驗證規則
- 12. Codeigniter表單驗證使用規則集
- 13. WPF應用驗證規則自定義用戶控制
- 14. jquery驗證(使用jQuery驗證插件) - 基於點擊按鈕激活特定元素的驗證規則
- 15. CRM2011子網格按鈕啓用規則
- 16. CakePHP如何使用在自定義驗證函數中內置驗證規則?
- 17. 在cakephp中創建驗證規則,它可以用作核心驗證規則
- 18. 如何根據您使用的發佈按鈕更改驗證規則?
- 19. 驗證規則無法正確更新2驗證規則
- 20. 使用按鈕驗證文本框?
- 21. 如何使用jQuery驗證具有多個驗證規則集
- 22. 如何使用jQuery驗證laravel驗證規則
- 23. 基於複選框列表選擇啓用WPF按鈕MVVM
- 24. 如何使用jQuery驗證HTML表單上的單選按鈕?
- 25. Yii框架驗證規則
- 26. 如何通過表單驗證啓用取消按鈕?
- 27. 在salesforce中使用驗證規則
- 28. 如何正確使用列表框中的按鈕itemtemplate/datatemplate?
- 29. 如何使用jquery驗證來驗證列表框
- 30. 如何使用許多規則驗證自定義輸入
如果使用MVVM和'綁定到該按鈕命令ICommand'接口,你可以定義一個'CanExecute'代表來檢查,如果在的SelectedItem = null – mechanic