我正在尝试使用以下代码在Xamarin.Forms.DataGrid
单元格中嵌入编辑器(灵感来自this sample)
<ContentPage.Content>
<StackLayout>
<dg:DataGrid ItemsSource="{Binding Items}" SelectionEnabled="True" SelectedItem="{Binding SelectedItem}"
RowHeight="70" HeaderHeight="50" PullToRefreshCommand="{Binding RefreshCommand}" IsRefreshing="{Binding IsRefreshing}">
<dg:DataGrid.Columns>
<dg:DataGridColumn Title="Col. 1" PropertyName="Prop. 1" Width="0.7*">
<dg:DataGridColumn.CellTemplate>
<DataTemplate>
<Entry Text="{Binding}" />
</DataTemplate>
</dg:DataGridColumn.CellTemplate>
</dg:DataGridColumn>
</dg:DataGrid.Columns>
</dg:DataGrid>
</StackLayout>
</ContentPage.Content>
现在工作正常,但编辑后的文本在单元格的左上角对齐。所以我尝试使用以下对齐参数之一:
HorizontalOptions="Center" VerticalOptions="Center"
<!-- or >
HorizontalOptions="CenterAndExpand" VerticalOptions="CenterAndExpand"
但在这两种情况下,我最终都以单元格为中心的文本,但现在,编辑器不会扩展(看起来好像我有填充)...而且结果是Center
或CenterAndExpand
实际上是相同的:
有人能帮助我获得理想的结果吗?
编辑:使用完整网格定义更新
奖励问题:如何摆脱编辑的边界?