C# Xaml 在 C# 中添加 ListBox 模板

C# Xaml ListBox Template Add in c#

我对列表框做了一些研究,但我不明白如何解决我的问题。 我的 xaml 页面中有一个列表框,现在我想使用模板添加一个 listviewitem(因此我得到切换按钮等),而不是在 xaml 中并借助 c#。我该怎么做呢?谢谢你的帮助

 <ListBox x:Name="Listbox" Background="Red">
        <ListBox.ItemTemplate  >
            <DataTemplate>
                <Grid x:Name="TemplateGrid">
                    <ToggleSwitch x:Name="Toggle" Foreground="Black">
                        <ToggleSwitch.Background>
                            <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                                <GradientStop Color="Black" Offset="0"/>
                                <GradientStop Color="Black" Offset="1"/>
                            </LinearGradientBrush>
                        </ToggleSwitch.Background>
                    </ToggleSwitch>
                    <TextBlock  HorizontalAlignment="Right" VerticalAlignment="Center" Width="26" x:Name="Text" Foreground="Black">Test</TextBlock>
                </Grid>
            </DataTemplate>
        </ListBox.ItemTemplate>

列表框将自动使用该模板。从您的代码中,只需调用 Listbox.Items.Add(obj)。不过要注意一件事 - 在您的数据模板中,我没有看到您正在为要定位的数据模板指定数据类型,因此它将通过在您的对象上调用 ToString() 来使用通用显示。