1. 程式人生 > >ComboBox繫結True與False到對應的索引項

ComboBox繫結True與False到對應的索引項

轉載:https://stackoverflow.com/questions/4335339/how-to-bind-a-boolean-to-combobox-in-wpf

定義轉換類

using System.Globalization;
using System.Windows.Data;
public class BoolToIndexConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{ return ((bool)value == true) ? 0 : 1;//注意與實際下拉列表項對應 } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { return ((int)value == 0) ? true : false;//注意與Convert保持一致 } }

新增到資源項

<Window.Resources>
    <local:BoolToIndexConverter
x:Key="boolToIdxCov" />
</Window.Resources>

XAML中使用轉換器

<StackPanel Orientation="Horizontal">
    <Label FontSize="16" VerticalContentAlignment="Center">允許測試</Label>
    <ComboBox MinWidth="60" SelectedIndex="{Binding ValidateUI.AllowInput, Converter={StaticResource boolToIdxCov}}"
VerticalAlignment="Center">
<ComboBoxItem Content=""/> <ComboBoxItem Content=""/> </ComboBox> </StackPanel>