我有一些包含一些列的DataGrid:
<DataGrid.Columns>
<DataGridTextColumn Header="Date" Binding="{Binding Date}, Mode=OneWay}"></DataGridTextColumn>
//9 DataGridTextColumn more
</DataGrid.Columns>
我想在DataGrid的末尾添加一个按钮。无论有多少行,按钮应该是所有列上的colspan的“最后一行”。我尝试了一些东西,但它没有用:
//</DataGrid.Columns>
<local:MyRecord Date="" ....>
<Button Grid.ColumnSpan="10" VerticalAlignment="Bottom" Click="Button1_Clicked" >Load More</Button>
</local:MyRecord>
背后的代码看起来像这样:
public class MyRecord{
public string Date{ get; set;}
//...
}
如何在DataGrid的末尾添加/添加按钮?纯XAML有可能吗?
答案 0 :(得分:2)
首先,您需要使用ScrollViewer
和StackPanel
。把它们放在你的DataGrid上:
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto">
<StackPanel>
<DataGrid>
///Content goes here...
</DataGrid>
<Button Height="Auto" ....></Button>
</StackPanel>
</ScrollViewer>
在DataGrid
中,您需要(DataGrid.)Template
:
<DataGrid RowHeaderWidth="0">
<DataGrid.Template>
<ControlTemplate>
<StackPanel Orientation="Vertical">
<DataGridColumnHeadersPresenter />
<ItemsPresenter />
</ControlTemplate>
</DataGrid.Template>
</DataGrid>
现在,DataGrid使用ScrollViewer
启用滚动。