[英]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.