我正在使用TreeView,並且有一些孩子進入它。我該如何防止我的WPF TreeView聚焦所選的TreeViewItem
問題是,當我選擇一個寬度高於TreeView的子級時,滾動automaticaly會移動以顯示所有選定的項目,我想禁用此行爲!
我已經嘗試處理RequestBringIntoView事件,但它似乎不工作!
感謝您的幫助!
這裏是XAML:
<Window x:Class="WpfApplication2.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="350">
<Grid>
<TreeView RequestBringIntoView="TreeView_RequestBringIntoView">
<TreeViewItem Header="Monster huge tree view item Header OMG WTF IS THAT BBQ"/>
<TreeViewItem Header="TreeView Elem 1">
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1">
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1">
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1">
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1">
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1">
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="Monster huge tree view item Header OMG WTF IS THAT BBQ">
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1">
<TreeViewItem Header="Monster huge tree view item Header OMG WTF IS THAT BBQ"/>
</TreeViewItem>
</TreeViewItem>
</TreeViewItem>
</TreeViewItem>
</TreeViewItem>
</TreeViewItem>
</TreeViewItem>
</TreeViewItem>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
<TreeViewItem Header="TreeView Elem 1"/>
</TreeView>
</Grid>
</Window>
而且代碼behing CS:
using System.Windows;
namespace WpfApplication2
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void TreeView_RequestBringIntoView(object sender, RequestBringIntoViewEventArgs e)
{
e.Handled = true;
}
}
}
+1優秀長TreeView項名稱 – 2012-01-04 09:53:05