0

, (デザインあり)PCを含むクラスがあり、他のクラスの PC のリストを取得したいと考えています。ImageLabelXAMLListBox

これを試しましたが、エラーが発生しましたSystem.Windows.Markup.XamlParseException

pc p = new pc();
list_pc.Items.Add(p);
(where list_pc is a ListBox)

これはXAML単一の場合PCです:

 <Window
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d"
    x:Class="TnCyberCafe.pc"
    Title="pc"
    SizeToContent="WidthAndHeight"
    ShowInTaskbar="False"
    WindowStartupLocation="CenterScreen"
    WindowStyle="None"
    AllowsTransparency="True"
    Background="Transparent" Width="95" Height="104.982">

    <Grid  HorizontalAlignment="Left" Margin="0,10,-15,10" Width="110">
        <Image x:Name="image" HorizontalAlignment="Left" Height="96" VerticalAlignment="Top" Width="100" Source="Resources/aaa.png" RenderTransformOrigin="0.5,0.26" Margin="0,-16,0,0"/>
        <Label Content="Label" HorizontalAlignment="Left" Height="25" Margin="20,70,0,-10" VerticalAlignment="Top" Width="45"/>
    </Grid>
</Window>

これはXAML私のものlist_pcです:

<ListBox x:Name="liste_pc" ScrollViewer.VerticalScrollBarVisibility="Disabled">
    <ListBox.ItemsPanel>
        <ItemsPanelTemplate>
            <WrapPanel IsItemsHost="True" Orientation="Horizontal"/>
        </ItemsPanelTemplate>
    </ListBox.ItemsPanel>
    List PCs                
</ListBox>
4

1 に答える 1

0

System.Windows.Markup.XamlParseException に関する最初の質問:

Garry Vassが言及したように、何かがうまくいかなかったのですが、何が起こったのか正確にはわかりません。Visual Studio で開発している場合は、[デバッグ] タブの [例外]をクリックし、[共通言語ランタイムの例外]を有効にします。これにより、エラー コードが表示されます。

2 番目の質問については、以下のように databindings と ListBox Itemtemplate が必要です。

<ListBox x:Name="liste_pc" ItemsSource="{Binding PCList}"  ScrollViewer.VerticalScrollBarVisibility="Disabled">
     <ListBox.ItemTemplate>
           <DataTemplate>
              <StackPanel Orientation="Horizontal">
                  <Image Source="{Binding PCImageSource}" />
                  <Label Content="{Binding Path=PCName}" />
              </StackPanel>
          </DataTemplate>
     </ListBox.ItemTemplate>

</ListBox>

ここで、PCList は、PC クラス オブジェクト項目の監視可能なコレクションです。

于 2013-06-05T19:29:43.537 に答える