123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- // ***********************************************************************
- // Assembly : HZH_Controls
- // Created : 08-15-2019
- //
- // ***********************************************************************
- // <copyright file="UCMenuChildrenItem.cs">
- // Copyright by Huang Zhenghui(黄正辉) All, QQ group:568015492 QQ:623128629 Email:623128629@qq.com
- // </copyright>
- //
- // Blog: https://www.cnblogs.com/bfyx
- // GitHub:https://github.com/kwwwvagaa/NetWinformControl
- // gitee:https://gitee.com/kwwwvagaa/net_winform_custom_control.git
- //
- // If you use this code, please keep this note.
- // ***********************************************************************
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Drawing;
- using System.Data;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- namespace HZH_Controls.Controls
- {
- /// <summary>
- /// 子类节点
- /// Implements the <see cref="System.Windows.Forms.UserControl" />
- /// Implements the <see cref="HZH_Controls.Controls.IMenuItem" />
- /// </summary>
- /// <seealso cref="System.Windows.Forms.UserControl" />
- /// <seealso cref="HZH_Controls.Controls.IMenuItem" />
- [ToolboxItem(false)]
- public partial class UCMenuChildrenItem : UserControl, IMenuItem
- {
- /// <summary>
- /// Occurs when [selected item].
- /// </summary>
- public event EventHandler SelectedItem;
- /// <summary>
- /// The m data source
- /// </summary>
- private MenuItemEntity m_dataSource;
- /// <summary>
- /// Gets or sets the data source.
- /// </summary>
- /// <value>The data source.</value>
- public MenuItemEntity DataSource
- {
- get
- {
- return m_dataSource;
- }
- set
- {
- m_dataSource = value;
- if (value != null)
- {
- lblTitle.Text = value.Text;
- }
- }
- }
- /// <summary>
- /// Initializes a new instance of the <see cref="UCMenuChildrenItem" /> class.
- /// </summary>
- public UCMenuChildrenItem()
- {
- InitializeComponent();
- this.lblTitle.MouseDown += lblTitle_MouseDown;
- }
- /// <summary>
- /// Handles the MouseDown event of the lblTitle control.
- /// </summary>
- /// <param name="sender">The source of the event.</param>
- /// <param name="e">The <see cref="MouseEventArgs" /> instance containing the event data.</param>
- void lblTitle_MouseDown(object sender, MouseEventArgs e)
- {
- if (SelectedItem != null)
- {
- SelectedItem(this, null);
- }
- }
- /// <summary>
- /// 设置样式
- /// </summary>
- /// <param name="styles">key:属性名称,value:属性值</param>
- /// <exception cref="System.Exception">菜单元素设置样式异常</exception>
- /// <exception cref="Exception">菜单元素设置样式异常</exception>
- public void SetStyle(Dictionary<string, object> styles)
- {
- Type t = this.GetType();
- foreach (var item in styles)
- {
- var pro = t.GetProperty(item.Key);
- if (pro != null && pro.CanWrite)
- {
- try
- {
- pro.SetValue(this, item.Value, null);
- }
- catch (Exception ex)
- {
- throw new Exception("菜单元素设置样式异常", ex);
- }
- }
- }
- }
- /// <summary>
- /// Sets the selected style.
- /// </summary>
- /// <param name="blnSelected">if set to <c>true</c> [BLN selected].</param>
- public void SetSelectedStyle(bool? blnSelected)
- {
- }
- }
- }
|