Files
Shrlalgo.RvKits/Melskin/Controls/AccordionItem.cs

35 lines
1.4 KiB
C#
Raw Normal View History

2025-09-04 22:39:00 +08:00
using System.Windows;
using System.Windows.Controls;
2026-01-02 17:30:41 +08:00
namespace Melskin.Controls
2025-09-04 22:39:00 +08:00
{
/// <summary>
/// AccordionItem 类表示一个可以展开和折叠的项,通常用于 Accordion 控件中。
/// 继承自 HeaderedContentControl允许设置标题和内容。
/// </summary>
2025-09-04 22:39:00 +08:00
public class AccordionItem : HeaderedContentControl
{
static AccordionItem()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(AccordionItem), new FrameworkPropertyMetadata(typeof(AccordionItem)));
}
/// <summary>
/// 表示AccordionItem是否处于展开状态的依赖属性。
/// 该属性用于绑定和样式设置以便在XAML中控制AccordionItem的展开或折叠状态。
/// </summary>
2025-09-04 22:39:00 +08:00
public static readonly DependencyProperty IsExpandedProperty =
DependencyProperty.Register(nameof(IsExpanded), typeof(bool), typeof(AccordionItem), new PropertyMetadata(false));
2025-09-04 22:39:00 +08:00
/// <summary>
/// 获取或设置一个值表示当前的AccordionItem是否处于展开状态。
/// 当此属性为true时表示AccordionItem是展开的如果为false则表示AccordionItem是折叠的。
/// </summary>
/// <value>类型为bool。默认值为false。</value>
2025-09-04 22:39:00 +08:00
public bool IsExpanded
{
get => (bool)GetValue(IsExpandedProperty);
set => SetValue(IsExpandedProperty, value);
2025-09-04 22:39:00 +08:00
}
}
}