我想从代码隐藏中自定义一个ListView
的ScrollViewer.HorizontalScrollMode
。我该怎么做?
在XAML中很容易:
<ListView
x:Name="MyListView"
ScrollViewer.VerticalScrollMode="Disabled"
ScrollViewer.VerticalScrollBarVisibility="Hidden"
ScrollViewer.HorizontalScrollMode="Disabled"
ScrollViewer.HorizontalScrollBarVisibility="Auto">
<!-- ...-->
</ListView>
但是我如何在C#或C++/CX代码隐藏中做到这一点呢?Disclaimer: I work for Microsoft.
1条答案
按热度按时间wwtsj6pe1#
ScrollViewer
属性(如VerticalScrollMode
、VerticalScrollBarVisibility
等)是attached properties(就像AutomationProperties一样)。XAML实际上提供了两种设置这些属性的方法:
SetValue
和GetValue
)我发现
SetValue
模式非常简单:(我还没有使用其他模式)。
此方法适用于所有AttachedProperties(请参阅this similar StackOverflow question)。
这是因为附加属性的核心是DependencyProperties,它提供
SetValue
和GetValue
API。Windows执行阶段的附加属性会实作为相依性属性,因此属性系统可以将值储存在共用相依性属性存放区中。因此,附加属性会公开主控类别上的相依性属性识别项。