csharp 在Windows 8.1和Windows Phone 8.1应用程序中运行的Expander控件的代码隐藏。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了csharp 在Windows 8.1和Windows Phone 8.1应用程序中运行的Expander控件的代码隐藏。相关的知识,希望对你有一定的参考价值。

[TemplateVisualState(Name = "Expanded", GroupName = "ExpandStateGroup")]
[TemplateVisualState(Name = "Collapsed", GroupName = "ExpandStateGroup")]
public class ExpanderControl : ContentControl
{
	public static readonly DependencyProperty HeaderProperty =
		DependencyProperty.Register("Header", typeof(object), typeof(ExpanderControl), new PropertyMetadata(null));

	public static readonly DependencyProperty IsExpandedProperty =
		DependencyProperty.Register("IsExpanded", typeof(bool), typeof(ExpanderControl), new PropertyMetadata(false, OnIsExpandedChanged));

	public object Header
	{
		get { return (object)GetValue(HeaderProperty); }
		set { SetValue(HeaderProperty, value); }
	}

	public bool IsExpanded
	{
		get { return (bool)GetValue(IsExpandedProperty); }
		set { SetValue(IsExpandedProperty, value); }
	}

	protected override void OnApplyTemplate()
	{
		base.OnApplyTemplate();
		this.ChangeVisualState();
	}

	private static void OnIsExpandedChanged(DependencyObject sender, DependencyPropertyChangedEventArgs arg)
	{
	   var expander = sender as ExpanderControl;
	   expander.ChangeVisualState();
	}

	private void ChangeVisualState()
	{
		if (this.IsExpanded)
		{
			VisualStateManager.GoToState(this, "Expanded", false);
		}
		else
		{
			VisualStateManager.GoToState(this, "Collapsed", false);
		}
	}
}

以上是关于csharp 在Windows 8.1和Windows Phone 8.1应用程序中运行的Expander控件的代码隐藏。的主要内容,如果未能解决你的问题,请参考以下文章

在现代 Windows 上使用经典 Windows 2000XPVista 任务栏

(Win 7+VS 2013) WDK 8.1 Update 本身是不是足以安装构建环境?

Win32 应用程序是不是也可以在 Windows 7 和 Windows 8/8.1 上运行?

Windows 8.1 和 Windows 10 应用程序问题

使用 Windows RT 的客户端证书(windows 8.1/windows phone 8.1)

xml 适用于Windows 8.1和Windows Phone 8.1应用程序的扩展器控件演示。