我大约有600个并排的文本框(看起来像矩阵)。每个文本框均按行号和列号命名。即 textbox_12_25将是第12行第25列的文本框。
是否可以使用箭头键和Enter来实现Excel等功能?
我对C#和WPF还是很陌生,所以希望您能获得详细而简单的答案。
答案 0 :(得分:0)
使用列表框并修改ItemTemplate和ItemsPanel
<ListBox ItemsSource="{Binding ShippingBays}" FontSize="14" Grid.Row="2" SelectedItem="{Binding SelectedBay}" Background="White" FocusVisualStyle="{x:Null}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<TextBlock Text="{Binding Description}" FontWeight="SemiBold" FontFamily="Arial" FontSize="12" Padding="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="{Binding ColumnCount}" Rows="{Binding RowCount}" />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
</ListBox>
这是我为类似应用程序编写的一些代码。尽管我没有在框中输入信息,但是我只是显示它。我知道这不是一个确切的答案,但即使您必须修改添加框的方式等,它也是一种解决方法。
我的网格底部显示A,因为我按RowCount降序进行排序,否则A将是第一行,就像excel一样。