0

リストボックスを使用して項目のリストを表示しています。そのための XAML コードを以下に示します。

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
        <ListBox x:Name="List" HorizontalAlignment="Left" Height="612" Margin="6,7,0,0" VerticalAlignment="Top" Width="443" SelectionChanged="List_SelectionChanged_1">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal" Width="400" Height="50">
                        <TextBlock x:Name="tbName" Width="400" Height="44" FontSize="22" FontWeight="Bold" Text="{Binding Name}" />
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>
</Grid>

そして、次の C# コードでリストを作成するだけです。

foreach (var item in categoryDetails.Category)
        {
           CategoryDisplay data = new CategoryDisplay();
           data.Name = item.accountName;
           data.Id = item.accountID;
           this.List.Items.Add(data);
        }

最後のステップまですべてがうまくいきます。

this.List.Items.Add(data);

が実行されると、次のエラーが表示されます。

An exception of type 'System.UnauthorizedAccessException' occurred in System.Windows.ni.dll but was not handled in user code

何が問題なのですか?直すにはどうしたらいいですか??

4

2 に答える 2

1

のコレクションthis.List.Itemsが初期化されていないようです。

コレクションを宣言するとき (ObservableCollection であると仮定しましょう。ただし、コードから型がどうあるべきかわかりません)、new ObservableCollection<AccountDetail>()項目を追加する前に初期化する必要があります。

于 2013-10-23T12:52:50.243 に答える