ScrollViewer
属性(如、VerticalScrollMode
等VerticalScrollBarVisibility
)是附加属性(就像AutomationProperties一样)。
XAML 实际上提供了两种设置这些属性的方法:
- 属性系统 (
SetValue
和GetValue
)
- XAML 访问器模式
我发现SetValue
模式超级简单:
// C++/CX
this->MyListView->SetValue(ScrollViewer::VerticalScrollModeProperty, ScrollMode::Disabled);
this->MyListView->SetValue(ScrollViewer::VerticalScrollBarVisibilityProperty, ScrollBarVisibility::Hidden);
this->MyListView->SetValue(ScrollViewer::HorizontalScrollModeProperty, ScrollMode::Disabled);
this->MyListView->SetValue(ScrollViewer::HorizontalScrollBarVisibilityProperty, ScrollBarVisibility::Hidden);
(我没有使用其他模式)。
此方法适用于所有 AttachedProperties(请参阅此类似的 StackOverflow 问题)。
这是因为附加属性的核心是 DependencyProperties,它提供了APISetValue
和GetValue
API。从附加属性的文档中:
Windows 运行时的附加属性被实现为依赖属性,因此属性系统可以将值存储在共享的依赖属性存储中。因此,附加属性在所属类上公开了一个依赖属性标识符。