WPF类似于Excel的带有文本框的箭头键功能

时间:2019-05-22 20:36:39

标签: c# wpf

我大约有600个并排的文本框(看起来像矩阵)。每个文本框均按行号和列号命名。即 textbox_12_25将是第12行第25列的文本框。

是否可以使用箭头键和Enter来实现Excel等功能?

我对C#和WPF还是很陌生,所以希望您能获得详细而简单的答案。

1 个答案:

答案 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一样。

enter image description here