我是SilverLight 4的新手,我遇到了TreeView控件行为的问题。
我希望能够在TreeView中垂直滚动,但滚动仅在我将鼠标放在项目上时才有效。滚动条是可见的,它与它完美配合,但是当我的鼠标在TreeView内而不在任何TreeView项上时,TreeView将不会滚动。有没有什么办法解决这一问题?或者,如果有人知道任何免费或专有控制,我很乐意知道。
http://s14.postimage.org/ak2hrz135/Tree_View_Problem.jpg
注意:将TreeView放置在ScrollingViewer中可以正常工作,但它会混淆TreeView的样式。另外,如果可能的话,我也不想使用ScrollViewer。
由于
以下是有人想要试用的代码:
<UserControl x:Class="TreeViewScrollingTest.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400"xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk">
<Grid x:Name="LayoutRoot" Background="White">
<sdk:TreeView x:Name="treeView1" Height="200">
<sdk:TreeViewItem Header="Header 001">
<TextBlock>Test 001</TextBlock>
</sdk:TreeViewItem>
<sdk:TreeViewItem Header="Header 002">
<TextBlock>Test 002</TextBlock>
</sdk:TreeViewItem>
<sdk:TreeViewItem Header="Header 003">
<TextBlock>Test 003</TextBlock>
</sdk:TreeViewItem>
<sdk:TreeViewItem Header="Header 004">
<TextBlock>Test 004</TextBlock>
</sdk:TreeViewItem>
<sdk:TreeViewItem Header="Header 005">
<TextBlock>Test 005</TextBlock>
</sdk:TreeViewItem>
<sdk:TreeViewItem Header="Header 006">
<TextBlock>Test 006</TextBlock>
</sdk:TreeViewItem>
<sdk:TreeViewItem Header="Header 007">
<TextBlock>Test 007</TextBlock>
</sdk:TreeViewItem>
<sdk:TreeViewItem Header="Header 008">
<TextBlock>Test 008</TextBlock>
</sdk:TreeViewItem>
<sdk:TreeViewItem Header="Header 009">
<TextBlock>Test 009</TextBlock>
</sdk:TreeViewItem>
<sdk:TreeViewItem Header="Header 010">
<TextBlock>Test 010</TextBlock>
</sdk:TreeViewItem>
</sdk:TreeView>
</Grid>
</UserControl>
答案 0 :(得分:0)
使用Lee Campbell博客文章的提示:http://leecampbell.blogspot.ch/2009/01/horizontal-stretch-on-treeviewitems.html
我修改了默认列定义,现在TreeViewItems至少与TreeView的整个宽度相关。由于TreeView控件实现了我的鼠标光标在TreeViewItems上,滚动问题也消失了。
答案 1 :(得分:0)
我已经在我的博客上发布了一个解决方案,这个简单的解决方案不需要对模板进行任何干预:
http://shemesh.wordpress.com/2013/12/31/silverlight-treeview-scroll-behavior/