簡體   English   中英

如何通過XAML手動將靜態項綁定到SplitButton(錯誤)

[英]How to manually bind static Items to SplitButton (mahapps) via XAML

如何手動添加例如通過xaml從中預選第一個的2個項目(按鈕)? 喜歡:

<controls:SplitButton SelectedIndex="0">
    <controls:SplitButton.Items>
        <Button Content="Button 1"/>
        <Button Content="Button 2"/>
    </controls:SplitButton.Items>
</controls:SplitButton>

文檔告訴我使用ItemsSource Binding,但是后面沒有代碼示例。

這是XAML:

<controls:SplitButton x:Name="splitButton" 
        SelectedIndex="1" 
        HorizontalAlignment="Left" 
        VerticalAlignment="Top" 
        Grid.Column="1">
    <controls:SplitButton.ItemTemplate>
        <DataTemplate>
            <Grid>
                <TextBlock HorizontalAlignment="Left" 
                        TextWrapping="Wrap" 
                        Text="{Binding Text}" 
                        VerticalAlignment="Top"/>
            </Grid>
        </DataTemplate>
    </controls:SplitButton.ItemTemplate>
</controls:SplitButton>

這是背后的代碼:

class SplitButtonItem
{
    public string Text { get; set; }
}

public MainWindow()
{
    InitializeComponent();

    var button1 = new SplitButtonItem() { Text = "Item 01", };
    var button2 = new SplitButtonItem() { Text = "Item 02", };
    var buttonList = new List<SplitButtonItem>() 
    {
        button1, 
        button2,
    };
    splitButton.ItemsSource = buttonList;
}

這是運行時的樣子:

這就是運行時的樣子

這是您要找的東西嗎?

您可以使用ItemsSource和可枚舉的對象,並且不指定DisplayMemberPath

<controls:SplitButton HorizontalContentAlignment="Left"
                        HorizontalAlignment="Center"
                        VerticalContentAlignment="Center"
                        Width="120"
                        VerticalAlignment="Top">
    <controls:SplitButton.ItemsSource>
        <x:Array Type="system:String">
            <system:String>Label 1</system:String>
            <system:String>Another one</system:String>
            <system:String>Works now</system:String>
        </x:Array>
    </controls:SplitButton.ItemsSource>
</controls:SplitButton>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM