我有一個綁定到數據表列這樣的組合框:在組合框中綁定物品使用轉換器
ComboBox.DataContext = DataDataTable;
ComboBox.DisplayMemberPath = DataDataTable.Columns["IDNr"].ToString();
的IDNR在列總是使用4個字母,後與ID號碼(例如BLXF1234 )。 我需要在沒有字母的組合框中顯示項目(我需要在組合框中顯示1234)。
所以我寫了一個轉換器:
class IDPrefixValueConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value != null)
{
string s = value.ToString();
if (s.Contains("BL"))
{
return s.Substring(4);
}
else
{
return s;
}
}
return "";
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotSupportedException();
}
沒有,我怎麼能告訴組合框使用轉換器顯示的項目? 我想這在XAML:
ItemsSource="{Binding}"
DisplayMemberPath="{Binding Converter={StaticResource IDPrefixValueConverter}}"
但仍然沒有工作...任何想法? 感謝
mmm ...仍然不知道錯誤在哪裏...... – lebhero 2012-02-25 23:08:43
DisplayMemberPath是**屬性的**路徑,甚至不顯示綁定。如果你在那裏應用轉換器,你什麼都沒有。 – 2012-02-25 23:14:01
好吧,謝謝反正我檢查應該格式化組合框項目!!!? – lebhero 2012-02-25 23:20:40