2

現在、私は大きなソフトウェア プロジェクトで共同作業を行っていますが、実装しようとしている便利な機能に問題がありました。

問題は、一部のユーザーが選択できる特定の項目に自動的にスクロールする方法がわからないことです。wrappanel は、items コントロールの itemspaneltemplate として使用されます。

理解を深めるために、コードは次のとおりです。

<ItemsControl ItemsSource="{Binding SomeData}">
   <ItemsControl.ItemsPanel>
      <ItemsPanelTemplate>
         <WrapPanel />
      </ItemsPanelTemplate>
   </ItemsControl.ItemsPanel>
   <ItemsControl.ItemTemplate>
      <DataTemplate>
         <SomeChart DataContext="{Binding }" Focusable="True" />
      </DataTemplate>
   </ItemsControl.ItemTemplate>
</ItemsControl>
4

1 に答える 1

2

について言及しましたItemsControlが、ItemsControl から派生するほとんどのコントロールには、Listbox/Datagrid を現在選択されている項目にスクロールするためのScrollIntoViewメソッドがあります。

例えば:

listBox1.ScrollIntoView(listBox1.SelectedIndex);

また

dataGrid1.ScrollIntoView(dataGrid1.SelectedIndex);

ListViewの別のソリューションを次に示します。

更新: Wrappanel を使用したリストボックス

<ListBox x:Name="myList">
    <ListBox.ItemsPanel>
        <ItemsPanelTemplate>
            <WrapPanel ItemHeight="150" ItemWidth="150"/>
        </ItemsPanelTemplate>
    </ListBox.ItemsPanel>
</Listbox>
于 2012-11-20T11:40:51.660 に答える