我正在使用Xamarin.Forms.DataGrid
,现在我想使表格的第一列固定在水平滚动上。请看图片。
如何实现这一点有什么想法吗?
<dg:DataGrid ItemsSource="{Binding Details}" SelectionEnabled="True" SelectedItem="{Binding SelectedProfesstional}" RowHeight="70" HeaderHeight="50"
BorderColor="#CCCCCC" HeaderBackground="#E0E6F8" PullToRefreshCommand="{Binding RefreshCommand}" IsRefreshing="{Binding IsRefreshing}" ActiveRowColor="#8899AA">
<x:Arguments>
<ListViewCachingStrategy>RetainElement</ListViewCachingStrategy>
</x:Arguments>
<dg:DataGrid.HeaderFontSize>
<OnIdiom x:TypeArguments="x:Double">
<OnIdiom.Tablet>15</OnIdiom.Tablet>
<OnIdiom.Phone>12</OnIdiom.Phone>
</OnIdiom>
</dg:DataGrid.HeaderFontSize>
<dg:DataGrid.Columns>
<dg:DataGridColumn PropertyName="Name" Width="3*" >
<dg:DataGridColumn.FormattedTitle>
<FormattedString>
<Span Text="User Name" FontSize="13" TextColor="Black" FontAttributes="Bold" />
</FormattedString>
</dg:DataGridColumn.FormattedTitle>
</dg:DataGridColumn>
<dg:DataGridColumn Title="User Email" PropertyName="Email" Width="2*"/>
<dg:DataGridColumn Title="User Phone" PropertyName="Number" Width="1*"/>
</dg:DataGrid.Columns>
<dg:DataGrid.RowsBackgroundColorPalette>
<dg:PaletteCollection>
<Color>#F2F2F2</Color>
<Color>#FFFFFF</Color>
</dg:PaletteCollection>
</dg:DataGrid.RowsBackgroundColorPalette>
</dg:DataGrid>
1条答案
按热度按时间f1tvaqid1#
有许多方法可以在水平滚动时实现固定列。
根据this thread,您可以使用开放源代码:Zumero DataGrid,支持滚动,支持
horizontal
和vertical
,可选顶部冻结表头行,可选左侧冻结列等。基于this thread,您可以从
DataGrid
中添加一个ScrollView
,并设置Orientation="Both"
,如下所示: