2017-12-25 4 views
-1

最後のリストボックスの最初のアイテムにID (x:Uid="identifier")を追加する必要があります。私のリストボックスアイテムは、次のようなデータソースを介して入力されます:ListBoxにIDを追加する

<ListBox x:Name="listbox1" Grid.Row="1" BorderThickness="0" 
    ItemsSource="{SomeBinding}"> 

xamlで実行できますか? ListBoxカスタムクラスから

+0

あなたが結合 'ItemsSource'を使用することができますソースID –

+0

申し訳ありませんが、私は理解していません - アイテムのソースは単なるバインディング "マッピング"であり、どうですかItemsSourceの正確な要素が最初か最後かを判断することは可能ですか? – zohak

+0

'Listbox'はアイテムオーダーのアイテムのみをバインドします –

答えて

0

継承。保護されたメソッドをオーバーライドします。名前はどちらかというと覚えていません。何か.GetContainerFor(...)についてのものです。そこからあなたはnew ListBoxItem()を返し、好きなように設定することができます。

1

私はどのように実装したいのか分かりませんが、ここでは解決策のいくつかがあります。

ListBoxの最初と最後のIDのIDが必要だと思いました。あなたは多くの仕事と頭痛のないxamlでそれを行うことができるかどうかは分かりません。 既にオブジェクトにバインドされています。 さんが言ってみましょう:

XAML:背後

<ListBox x:Name="listbox1" ItemsSource="{Binding Items}"/> 

コード:

private ObservableCollection<Item> _Items; 
public ObservableCollection<Item> Items 
{ 
    get { return _Items; } 
    set { _Items = value; } 
} 

だから、あなたはこのように」日を得ることができます:

private void Button_Click(object sender, RoutedEventArgs e) 
{ 
    var firstItem = Items[0]; 
    var lastItem = Items[Items.Count - 1]; 
} 
+0

はい、私はViewModelでそれらを得ることができると思いますが、このアイテムにはUidフィールドがあるとは思いません。 – zohak

関連する問題