簡體   English   中英

如何在Silverlight的ComboBox中模擬“ AppendDataBoundItems”?

[英]How to emulate “AppendDataBoundItems” in Silverlight's ComboBox?

在Asp.Net組合框中,有一個有用的屬性AppendDataBoundItems ,該屬性使綁定到控件的所有項目實際附加到“靜態”添加的廣告設計時間中。 當可用項目中的任何項目都不符合條件時,用戶可以指定“默認”值,或者用於指定特殊的“空值”項目時,這很有用。

不幸的是,Silverlight ComboBox中沒有此類屬性,並且在控件已進行數據綁定時也無法通知。

在最近幾天,我遇到了非強制性的Combobox遇到的相同問題。 我處理它的方法是在說“ Salutations”的集合中添加一個空值,例如“ Mr”,“ Miss”等。

好的,我的解決方案很丑陋,但是它可以工作。理想情況下,我希望有一個類型T的可綁定對象,該對象包裝了ObservableCollection。 但是,與往常一樣,我們在這里承受着巨大的時間壓力,目前暫時如此。

如下將SalutationDTO添加到ObservableCollection中。

 public static void EnableNullableSalutationChoice(this ObservableCollection<SalutationDTO> salutations)
{
  salutations.Insert(0, NullSalutationChoice);
}

    public static SalutationDTO NullSalutationChoice
{
  get
  {
    return new SalutationDTO {Salutation = " ", SalutationID = null};
  }
}

您可以通過覆蓋ComboBox模板來執行某些操作。 但是,Silverlight組合框是一個不成熟的組件,因此存在許多問題。 您可能最好實現自己的組合框(或使用Internet上的一種實現)並自己編寫此行為。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM