ComboBox繫結True與False到對應的索引項
阿新 • • 發佈:2019-01-01
轉載: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>