在ListBox C#WPF中添加带有XAML的自定义类

时间:2013-06-05 17:25:53

标签: c# wpf xaml listbox

我的课程PC包含ImageLabelXAML设计),我希望获得ListBox中的个人电脑列表其他课程。

我试过这个,但收到错误System.Windows.Markup.XamlParseException

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

这是单XAML的{​​{1}}:

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> 的{​​{1}}:

XAML

1 个答案:

答案 0 :(得分:0)

关于System.Windows.Markup.XamlParseException的第一个问题:

由于Garry Vass提到了一些问题,但并没有告诉你究竟发生了什么。如果您在Visual Studio中进行开发,请单击调试选项卡下的例外,然后启用公共语言运行时例外。这将指向错误代码。

对于第二个问题,你应该有数据绑定和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类对象项的可观察集合