0

に渡すオブジェクトのコレクションItemsがあります。everyを eachに直接渡したいと思います。どうやってやるの?JSectionLongListMultiSelectorJSectioncontrols:Section

ランタイム例外を引き起こす XAML:

<toolkit:LongListMultiSelector ItemsSource="{Binding Items}">
    <toolkit:LongListMultiSelector.ItemTemplate>
        <DataTemplate>
            <controls:Section Data="{Binding}" />
        </DataTemplate>
    </toolkit:LongListMultiSelector.ItemTemplate>
</toolkit:LongListMultiSelector>

次の XAML を含む UserControl LongListMultiSelector:

namespace Controls
{
    public partial class RemoteHomePage : UserControl
    {
        public ObservableCollection<JSection> Items { get; set; }

        public RemoteHomePage()
        {
            Items = new ObservableCollection<JSection> { };

            Items.Add(new JSection { id = 2, name = "Section 2" });
            Items.Add(new JSection { id = 1, name = "Section 1" });
            Items.Add(new JSection { id = 3, name = "Section 3" });

            InitializeComponent();
        }
    }
}

Sectionクラス:

namespace Controls
{
    public partial class Section : UserControl
    {
        public JSection Data { get; set; }

        public Section()
        {
            InitializeComponent();
        }
    }
}  

私が得る例外:

An exception of type 'System.ArgumentException' occurred in mscorlib.ni.dll and wasn't handled before a managed/native boundary
An exception of type 'System.IO.FileNotFoundException' occurred in Unknown Module. and wasn't handled before a managed/native boundary
An exception of type 'MS.Internal.NativeParseException' occurred in Unknown Module. and wasn't handled before a managed/native boundary
An exception of type 'System.Exception' occurred in Unknown Module. and wasn't handled before a managed/native boundary
4

2 に答える 2

0

LongListSelector.ItemSource=Collection として任意のコレクションをバインドできます。任意の ListElement[i] の Datacontext は、対応する Collection[i] 要素に自動的に設定されます。

于 2013-01-18T22:33:13.663 に答える
0

いくつかの検索の後、明示的なバインディングをまったく設定する必要がなく、 every が every になることがわかりましJSectionた。DataContextSection

このコードは問題なく動作し、例外は発生しません。

<toolkit:LongListMultiSelector ItemsSource="{Binding Items}">
    <toolkit:LongListMultiSelector.ItemTemplate>
        <DataTemplate>
            <controls:Section />
        </DataTemplate>
    </toolkit:LongListMultiSelector.ItemTemplate>
</toolkit:LongListMultiSelector>
于 2013-01-18T19:50:50.620 に答える