| | |
| | | /// 控件的点击事件(此事件被认可为执行按钮按下事件,受CanClick属性控制)
|
| | | /// </summary>
|
| | | public Action<Button, MouseEventArgs> ButtonClickEvent = null;
|
| | | /// <summary>
|
| | | /// 底部阴影控件1
|
| | | /// </summary>
|
| | | private Button btnBottomShadowView1 = null;
|
| | | /// <summary>
|
| | | /// 底部阴影控件2
|
| | | /// </summary>
|
| | | private Button btnBottomShadowView2 = null;
|
| | |
|
| | | #endregion
|
| | |
|
| | |
| | | /// <summary>
|
| | | /// 添加底部阴影特效(确保拥有父控件后才调用)
|
| | | /// </summary>
|
| | | public void AddBottomShadow()
|
| | | /// <param name="view">为哪个控件添加阴影特效,省略时,为当前控件添加</param>
|
| | | /// <param name="average">添加的阴影特效是否按平均值设置高宽度</param>
|
| | | public void AddBottomShadow(View view = null, bool average = false)
|
| | | {
|
| | | var btnShadow = new PicViewControl(this.Width, Application.GetMinRealAverage(45), false);
|
| | | btnShadow.X = this.X;
|
| | | btnShadow.Y = this.Bottom;
|
| | | btnShadow.UnSelectedImagePath = "Item/BottomShadow.png";
|
| | | this.Parent.AddChidren(btnShadow);
|
| | | //需要扩大的高度
|
| | | int heightValue = 21;
|
| | | //需要扩大的宽度
|
| | | int widthValue = 15;
|
| | | //最大高度
|
| | | int maxHeight = 0;
|
| | | if (average == false)
|
| | | {
|
| | | heightValue = Application.GetRealHeight(heightValue);
|
| | | widthValue = Application.GetRealWidth(widthValue);
|
| | | maxHeight = Application.GetRealHeight(460);
|
| | | }
|
| | | else
|
| | | {
|
| | | heightValue = Application.GetMinRealAverage(heightValue);
|
| | | widthValue = Application.GetMinRealAverage(widthValue);
|
| | | maxHeight = Application.GetMinRealAverage(460);
|
| | | }
|
| | | if (view == null)
|
| | | {
|
| | | //省略时,指定为当前控件
|
| | | view = this;
|
| | | }
|
| | | //先移除
|
| | | this.btnBottomShadowView1?.RemoveFromParent();
|
| | | this.btnBottomShadowView2?.RemoveFromParent();
|
| | |
|
| | | int realHeight = view.Height + heightValue * 2;
|
| | | if (realHeight <= maxHeight)
|
| | | {
|
| | | //阴影控件
|
| | | this.btnBottomShadowView1 = new Button();
|
| | | btnBottomShadowView1.UnSelectedImagePath = "Item/BottomShadow.png";
|
| | | btnBottomShadowView1.Height = realHeight;
|
| | | btnBottomShadowView1.Width = view.Width + widthValue * 2;
|
| | | btnBottomShadowView1.X = view.X - widthValue;
|
| | | btnBottomShadowView1.Y = view.Y;
|
| | | view.Parent.AddChidren(btnBottomShadowView1);
|
| | | view.BringToFront();
|
| | | }
|
| | | else
|
| | | {
|
| | | //超过最大时,特殊处理
|
| | | this.btnBottomShadowView1 = new Button();
|
| | | btnBottomShadowView1.UnSelectedImagePath = "Item/BottomShadow.png";
|
| | | btnBottomShadowView1.Height = view.Height - heightValue * 2;
|
| | | btnBottomShadowView1.Width = view.Width + widthValue * 2;
|
| | | btnBottomShadowView1.X = view.X - widthValue;
|
| | | btnBottomShadowView1.Y = view.Y + heightValue * 2;
|
| | | view.Parent.AddChidren(btnBottomShadowView1);
|
| | |
|
| | | this.btnBottomShadowView2 = new Button();
|
| | | btnBottomShadowView2.UnSelectedImagePath = "Item/BottomShadow.png";
|
| | | btnBottomShadowView2.Height = maxHeight;
|
| | | btnBottomShadowView2.Width = view.Width + widthValue * 2;
|
| | | btnBottomShadowView2.X = view.X - widthValue;
|
| | | btnBottomShadowView2.Y = view.Bottom - maxHeight + heightValue * 2;
|
| | | view.Parent.AddChidren(btnBottomShadowView2);
|
| | | view.BringToFront();
|
| | | }
|
| | | }
|
| | |
|
| | | #endregion
|