资源描述
1.什么是WinForm?2.Winform有哪些特点?3.简述一下 Winform 的架构体系是怎样的?4.Winform 和 WPF 有什么区别?5.如何在WinForm窗体中添加控件?6.控件的事件注册方式有哪些?7.Form窗体的Load事件什么时候引发?8.怎么设置一个Form窗体的默认提交按钮?9.通过C#代码如何实现将控件到Form窗体上?10.当不小心点击到窗体右上角的关闭按钮时,如何可以取消关闭?11.如何实现多个按钮订阅同一个事件处理程序?12.怎么将应用程序中一个隐藏的窗体重新显示?13.Winform中,简述一下窗体间传值有哪些方式?14.怎么实现Form的尺寸在运行时不可调整?15.列举一下WinForm中常用的布局控件有哪些?16.在使用TableLayoutPanel布局时,如何实现在一个单元格中放多个控件?17.如何将一个窗体页面进行分块布局?18.怎么将Form2作为子窗体显示在MDI容器中?19.Winform中,如何实现让控件一直显示在Form窗体的底部?20.如何设置MenuStrip控件中菜单项的快捷键?21.怎么设置StatusStrip控件中子项之间的分隔线?22.Winform开发中,实现跨页面刷新数据的方式有哪些?23.Winform中,控件开发有哪些方式?24.如何改变GroupBox的边框颜色?25.Windows.Forms.Timer 计时器如何实现定时处理?26.ComboBox控件如何绑定枚举类型中的项?27.Winform中多线程操作窗体或控件?28.Winform中,如何实现选择多项,并同时呈现选择的值?29.Winform中,如何将多个标签布局,使其均匀排列成行?30.Winform开发中,如何修改一个控件的属性?31.如何设置DataGridView中的数据行的背景交替呈现?32.DataGridView控件中,列标题栏的样式如何自定义?33.在DataGridView中如果将显示时间的列格式化显示?34.如何将DataGridView控件中的复选框列绑定值“是”和“否”?35.DataGridView中,实现行选择功能时,如何能立即取到单元格中的值?36.DevExpress是什么?37.DevExpress控件库如何汉化?38.DevExpress中的主要控件有哪些?39.DevExpress Winform基本控件是如何分类的?40.DevExpress中单选功能是如何实现的?41.如何在Dev Winform中实现下拉按钮的弹出面板?42.在DevExpress中,如何修改SimpleButton的背景色?43.使用RatingControl,如何使等级呈现半填充效果?44.DevExpress中,图片轮播效果怎么实现?45.DevExpress 中数据网格控件是什么?它有哪些主要功能?46.如何在 GridControl 中实现数据绑定?47.DevExpress中的图表控件是什么?它支持哪些图表类型?48.什么是 SunnyUI 库?49.SunnyUI 库的特点是什么?50.如何在项目中引入 SunnyUI 库?51.SunnyUI 中的 UIButton相比于普通 Button,有什么不同?52.SunnyUI中,对控件的边框设置的相关属性有哪些?53.SunnyUI中字体图标按钮的关于图标相关的属性有哪些?1.什么是WinForm?WinForm,是 Net开发平台中对Windows Form的一种称谓,是.NET Framework 中的一个用于创建 Windows 桌面应用程序的技术。它提供了一组丰富的类库和工具,允许开发人员使用 C#、VB.NET等编程语言来构建具有图形用户界面(GUI)的应用程序,开发人员可以通过拖放控件、设置属性和编写事件处理程序等方式快速创建出功能丰富的桌面应用程序。2.Winform有哪些特点?Winform的特点有:1).功能强大 Windows窗体可用于设计窗体和可视控件,以创建丰富的基于Windows的应用程序。2).操作方便 Winform程序可与各种数据库进行交互。3).使用安全 Windows窗体充分利用公共语言运行库的安全特性。3.简述一下 Winform 的架构体系是怎样的?Winform 架构是基于.NET Framework的,主要包括界面层、业务逻辑层和数据访问层。界面层:由各种 Windows Form窗体界面组成,负责与用户交互;业务逻辑层:处理应用程序的业务规则和逻辑;数据访问层负责与数据库等数据源进行交互,实现数据的读取、存储和更新等操作。各层之间通过接口和类的调用进行通信和协作,以实现整个应用程序的功能。4.Winform 和 WPF 有什么区别?Winform与WPF的主要区别包括:Winform 基于传统的 Windows Forms 技术,采用事件驱动编程模型,而 WPF 基于.NET Framework 的 Windows Presentation Foundation,采用数据驱动和声明式编程模型。Winform 的界面设计相对较为简单和直接,WPF 则提供了更强大的图形渲染能力和更灵活的布局系统。Winform 的性能在一些简单场景下表现良好,WPF 在处理复杂图形和动画等方面性能更优。5.如何在WinForm窗体中添加控件?向Form窗体中添加控件有两种方式:1.从工具箱中拖拽一个控件到窗体上;2.在窗体后台代码类中,通过C#代码创建控件,然后添加到窗体的Controls集合中。以下是通过C#代码创建一个Button控件并添加到窗体上的例子:6.控件的事件注册方式有哪些?Winform中的的控件,进行事件注册的方式有三种:1)对于控件的默认事件注册,直接双击控件即可注册,如:Button控件的Click事件,TextBox控件的TextChanged事件等。2)对于控件的其他事件,选择控件,在属性面板中,点击闪电符号打开事件列表,找到要事件,双击事件右侧的空白部分即可注册 3)还可在后台代码中通过程序代码实现控件的事件注册,如:7.Form窗体的Load事件什么时候引发?在 WinForm 应用程序中,Form 窗体的 Load 事件在窗体首次显示之前引发。当调用 Show 或 ShowDialog 方法显示窗体时,在窗体实际显示到屏幕上之前,会先触发 Load 事件。Load 事件在窗体的生命周期内只会触发一次。也就是说,当窗体第一次显示时会触发该事件,后续再次显示该窗体(如隐藏后再显示)时,Load 事件不会再次触发。8.怎么设置一个Form窗体的默认提交按钮?设置Formp窗体的AcceptButton属性,选择窗体上的一个按钮的名称即可。将用户按Enter时,就相当于单击了AcceptButton属性指定的按钮。9.通过C#代码如何实现将控件到Form窗体上?这里以Label为例说明。在Form1的加载事件中添加:/创建一个按钮控件Button btn=new Button();/设置按钮的文本btn.Text=添加;/设置按钮的位置btn.Location=new Point(50,50);/设置按钮的大小btn.Size=new Size(80,30);/为按钮添加点击事件处理程序btn.Click+=Btn_Click;/将按钮添加到窗体中this.Controls.Add(btn);BtnStart.Click+=BtnStart_Click;private void BtnStart_Click(object sender,EventArgs e)/这里写事件处理代码。这样就将一个Label控件添加到了Form中。10.当不小心点击到窗体右上角的关闭按钮时,如何可以取消关闭?在 WinForm 中,当你点击窗体右上角的关闭按钮时,会触发窗体的 FormClosing 事件。所以处理窗体的关闭功能,可以通过Form_Closing事件来处理,并在事件处理程序中设置 FormClosingEventArgs 的 Cancel 属性为 true 来取消窗体的关闭操作。实现方式如下:11.如何实现多个按钮订阅同一个事件处理程序?先在代码后台类中定义一个事件处理程序:然后订阅所有按钮的单击事件,如果在设计器中设置,将多个按钮的Click事件右侧的文本框中输入或选择Btn_Click。如果在代码中动态订阅,可以在代码后台类的构造函数或加载事件中如下面这样写:如Btn01按钮的订阅:Btn01.Click+=Btn_Click;Btn02按钮的订阅:Btn02.Click+=Btn_Click;private void Form1_Load(object sender,EventArgs e)Label label1=new Label()Text=“欢迎来到这里!”,ForeColor=System.Drawing.Color.Red,Name=”label1”,AutoSize=true,Location=new System.Drawing.Point(48,37);this.Controls.Add(label1);private void Form1_Closing(object sender,FormClosingEventArgs e)if(MessageBox.Show(“您确定要关闭该页吗?”,”关闭提示”,MessageBoxButtons.YesNo,MessageBoxIcon.Question)=DialogResult.No)e.Cancel=true;/取消关闭 Private void Btn_Click(object sender,EventArgs e)Button btn=(Button)sender;/根据不同按钮的文本分区处理逻辑 MessageBox.Show($你点击了按钮:btn.Text);Btn03按钮的订阅:Btn03.Click+=Btn_Click;.12.怎么将应用程序中一个隐藏的窗体重新显示?在Winform中,重新显示窗体可以使用 Show 或 ShowDialog 方法。在程序运行时,已经隐藏的窗体,可以通过遍历Application的OpenForms集合,从中如果找到了该Form,将其重新显示即可13.Winform中,简述一下窗体间传值有哪些方式?在 WinForm 中,实现窗体间传值有多种方式,常见的有以下几种:1.通过Tag属性传值 适用于传递一些相关的自定义信息或对象。2.通过构造函数传值 适用于在创建目标窗体时就需要传递数据的场景 3.通过公共属性传值 适用于在创建窗体后,通过设置窗体的公共属性来传递数据。4.通过静态变量传值 适用于在不同的窗体中共享数据。5.通过事件和委托传值 当需要从子窗体向父窗体传值时,使用事件和委托是一种很好的方式。14.怎么实现Form的尺寸在运行时不可调整?1)首先将Form的FormBoderStyle属性设置为:FixedSingle/Fixed3D/FixedDialog/FixedToolWindow中的一种;2)再将Form的MaximizeBox设置为False 然后,运行时,Form的大小就不可调整了。15.列举一下WinForm中常用的布局控件有哪些?在 WinForm 开发中,布局控件对于合理安排窗体上的控件位置和大小起着关键作用,以下是一些常用的布局控件:FlowLayoutPanel(流式布局面板)TableLayoutPanel(表格布局面板)SplitContainer(分割容器)/假设要显示的窗体名是:MyFormforeach(Form frm in Application.OpenForms)if(frm.Name=MyForm)frm.Show();Panel(面板)GroupBox(分组框)16.在使用TableLayoutPanel布局时,如何实现在一个单元格中放多个控件?在使用 TableLayoutPanel 布局时,若要在一个单元格中放置多个控件,可以在这个单元格内放一个容器控件(如 Panel),将多个控件添加到该容器中。17.如何将一个窗体页面进行分块布局?在Winform中,窗体界面布局设计很关键,实现分块布局方式很灵活,可有多种方式实现。1.使用SplitContainer实现分割布局 2.使用TableLayoutPanel实现表格式布局,3.结合多种容器控件共同实现界面分块布局,可以将 TableLayoutPanel、SplitContainer 等布局控件组合使用,以实现更复杂的分块布局。18.怎么将Form2作为子窗体显示在MDI容器中?1)将Form1设置为MDI容器窗体:将IsMdiContainer属性设置为True;2)在Form1的Load事件中或某个打开按钮中,提供以下代码:19.Winform中,如何实现让控件一直显示在Form窗体的底部?要让某控件停靠在Form窗体的下边缘,有以下方式:1.使用 Dock 属性 将控件的 Dock 属性设置为 DockStyle.Bottom,可以使控件停靠在窗体的底部,并且会随着窗体大小的改变而自动调整宽度。2.使用 Anchor 属性 将控件的 Anchor 属性设置为 AnchorStyles.Bottom|AnchorStyles.Left|AnchorStyles.Right,可以使控件固定在窗体的底部,并且其宽度会随着窗体宽度的变化而变化。3.使用 TableLayoutPanel 布局 TableLayoutPanel 可以将窗体划分为行和列的网格,通过合理设置行和列的样式,可以让控件显示在窗体的底部。20.如何设置MenuStrip控件中菜单项的快捷键?菜单项的快捷键有两种设置方式:(1)Alt快捷键 菜单项Text属性设置的文本末尾加上(&+键码)就可以 Form2 f2=new Form2();f2.MdiParent=this;(这里的this指Form1,假设当前页就是Form1)F2.Show();(2)Ctrl或Shift快捷键,设置菜单项的ShortcutKeys属性就可以了。21.怎么设置StatusStrip控件中子项之间的分隔线?StatusStrip控件中默认是没有分隔线的项,那么 如果各项之间要设置分隔线,怎么实现呢?答案很简单。在StatusStrip中添加一个StatusLabel子项,将它的BorderSides改成Left或Right即可。22.Winform开发中,实现跨页面刷新数据的方式有哪些?有以下几种方式:1)在子页面定义一个刷新事件,在主页面提供刷新处理程序,并与事件关联;然后在子页面需要执行刷新的地方调用事件。2)在子页面定义一个用于刷新的委托,在主页面创建子页面后,将刷新方法签名赋给委托,然后在子页面合适的地方调用委托。3)通过在静态类定义静态属性来存储共享数据,不同窗体可以直接访问和修改这些静态属性,从而实现数据的共享和刷新。23.Winform中,控件开发有哪些方式?在Winform中,控件开发可分为三类:1)复合控件:将现有标准控件组合起来成一个新控件 如public class UserCardControl:UserControl 2)扩展控件:继承于现有控件,扩展新的特性或重绘外观 如:public class ButtonEx:Button 3)自定义控件:完全地自定义一个控件。该控件继承于Control,重写OnPaint()实现控件外观绘制。Public class NewControl:Control 24.如何改变GroupBox的边框颜色?默认情况下,通过属性是没有办法的,需要通过扩展GroupBox来实现。这是我们可以开发一个扩展控件:GroupBoxEx,派生于GroupBox;然后扩展一个BorderColor属性,再重写OnPaint事件,在OnPaint中,重新绘制GroupBox的边框,使用BorderColor指定的颜色的作为边框的颜色即可。25.Windows.Forms.Timer 计时器如何实现定时处理?这个计时器是基于Form的,是可以在重复执行事件处理程序中直接修改控件的。首先,直接在Form上拖控件Timer,设置Enabled=true(程序运行计时器立即运行);然后设置时间间隔:Interval 为 1000(ms),表示每隔1s执行一次。最后,注册每隔Interval设置的时间间隔执行的Tick事件即可。26.ComboBox控件如何绑定枚举类型中的项?首先,定义枚举,比如定义一个星期的枚举类型 定义WeekDayInfo实体类将枚举类型中的值转换成List列表最后在Form1的Load事件中绑定数据源:private void timer1_Tick(object sender,EventArgs e)this.label1.Text=DateTime.Now.ToString(“yyyy-MM-dd HH:mm:ss”);public enum Weekdays 星期一,星期二,星期三,星期四,星期五,星期六,星期日 public class WeekDayInfo public int DayValueget;set;public string DayNameget;set;public List GetWeekDayList()List list=new List();foreach(int wdVal in Enum.GetValues(typeof(Weekdays)WeekDayInfo wd=new WeekDayInfo();wd.DayValue=wdVal;wd.DayName=Enum.GetName(typeof(Weekdays),wdVal);list.Add(wd);return list;comboBox1.DisplayMember=DayName;comboBox1.ValueMember=DayValue;comboBox1.DataSource=GetWeekDayList();27.Winform中多线程操作窗体或控件?因为Winform应用程序是单线程的。对于某一个控件来说,只有创建该控件的线程才能修改它的值。对Winform来说,在窗体中拖一个控件,它由程序的主线程创建。因此,如果我们在多线程编程中,经常会涉及到在子线程中操作窗体或窗体中的某些控件,那么如果我们想要在这个线程中直接去修改该控件的值,就会出现异常中断。那么如果,我们该如何做才能实现处理界面而不异常呢?答案是:我们可以在这个子线程中,通过this.Invoke()或 this.BeginInvoke()的方式通过由主线程去执行委托的方式在委托里去处理界面修改,就能解决。代码如下:28.Winform中,如何实现选择多项,并同时呈现选择的值?如果是使用原生控件,可以使用CheckedListBox控件,需要结合一个文本框TextBox来做一个组合控件实现,在CheckedListBox的ItemCheck事件中处理取得选择的值,再将多个选择的值拼接起来呈现在文本框中;如果使用Dev控件的话,使用CheckedComboBoxEdit控件即可实现,该控件的下拉菜单中就显示复选框列表,用户可以选择多个项目,点击确实后,选择的值就显示在编辑框中。29.Winform中,如何将多个标签布局,使其均匀排列成行?在Form窗体上,放一个FlowLayoutPanel容器,再将多个标签控件放在FlowLayoutPanel中,并将容器的FlowDirection设置为:LeftToRight。如果各标签之间要有间距,可以设置各个标签的Margin值就可以了。30.Winform开发中,如何修改一个控件的属性?在Winform中,修改一个控件的属性有两种方式:1)如果在设计界面上,直接选择该控件,在属性面板中,找到该属性,设置属性值 2)如果通过代码修改,在后台代码类中,通过控件对象名访问控件属性来修改,如,修改一个文本框控件的Text属性Task.Run()=This.Invoke(new Action()=Label1.Text=”您好!”;););txtName.Text=admin;31.如何设置DataGridView中的数据行的背景交替呈现?设置DataGridView控件的AlternatingRowsDefaultCellStyle属性,点击右边的小按钮,打开CellStyle编辑器,设置背景色,字体、文字颜色,其背景色设置与偶数行的背景一定不相同。32.DataGridView控件中,列标题栏的样式如何自定义?选择DataGridView控件,在属性面板中:1)设置ColumnHeadersDefaultCellStyle属性,点击进入CellStyle生成器,可设置列单元格的背景色、字体、文字颜色等 2)设置EnableHeadersVisualStyles为:False然后列标题栏的样式就生效了。33.在DataGridView中如果将显示时间的列格式化显示?右击DataGridView控件,选择“编辑列”-打开编辑列窗口,选择显示时间的列,点击DefaultCellStyle属性右边的小按钮,打开CellStyle编辑器,设置Format设置为:yyyy-MM-dd HH:mm:ss34.如何将DataGridView控件中的复选框列绑定值“是”和“否”?右击DataGridView控件,选择“编辑列”-打开编辑列窗口,选择复选框列,1)设置DataPropertyName属性为要绑定的属性名或列名 2)设置 FalseValue为 否,TrueValue为“是”即可。35.DataGridView中,实现行选择功能时,如何能立即取到单元格中的值?要解决这个问题,需要注册DataGridView控件的CurrentCellDirtyStateChanged事件才行。然后,你再去操作就可以了。36.DevExpress是什么?private void dgvUserist_CurrentCellDirtyStateChanged(object sender,EventArgs e)dgvUserist.CommitEdit(DataGridViewDataErrorContexts.Commit);DevExpress是一个领先的软件开发工具供应商,专注于为.NET平台提供高性能的UI控件、工具和框架,其产品包含WinForms、WPF、ASP.NET、Xamarin、Reporting、Office File API、CodeRush等。可帮助开发者快速构建功能丰富的桌面、Web和移动应用程序,具有高性能、可定制性、跨平台等特点。37.DevExpress控件库如何汉化?DevExpress汉化有多种方式,如手动汉化、使用第三方汉化包或使用DevExpress官网资源汉化等。这里介绍一下使用第三方汉化包汉化步骤:1.下载中文资源汉化包到本地 2.将语言包文件添加到项目中 3.在应用程序启动时加载语言包。这种是直接在项目中汉化。38.DevExpress中的主要控件有哪些?这里主要列举一些适用于 Windows Forms 应用程序开发的控件。数据展示控件:GridControl:高性能数据网格,支持复杂数据绑定和分组。TreeList:树形结构数据展示控件。数据编辑控件:TextEdit:增强型文本框。DateEdit:日期选择控件。LookUpEdit:下拉选择控件。ComboBoxEdit:增强型组合框。布局和容器控件:LayoutControl:自动布局控件。TabControl:标签页控件。PanelControl:面板控件。图表和报表控件:ChartControl:图表控件,支持多种图表类型。XtraReport:报表设计工具。导航控件:NavBar:导航栏控件。BreadCrumbEdit:面包屑导航控件。39.DevExpress Winform基本控件是如何分类的?基本控件分两大类:BaseEdit和BaseStyleControl,都继承BaseControl,它继承ControlBase,它继承Control。System.Threading.Thread.CurrentThread.CurrentUICulture=new System.Globalization.CultureInfo(zh-CN);BaseStyleControl分类的控件,提供了对控件外观的精细控制,可设置自身特有的样式(ButtonStyle,HighlightedItemStyle等)和外观,如SimpleButton、PanelControl、LabelControl等。BaseEdit分类的控件,提供通用的编辑和属性,用于数据输入和数据绑定,直接可以通过EditValue属性获取当前控件的值;Properties属性获取控件特有属性。常用的编辑控件有:TextEdit、DataEdit、SpinEdit、CheckEdit等。这两个基类为 DevExpress 控件提供了强大的扩展性和灵活性,开发者可以根据需求选择合适的基类来创建自定义控件。40.DevExpress中单选功能是如何实现的?在DevExpress中没有RadioButton控件,只有RadioGroup,但这个是单行组控件,可以实现单选组选择功能,但却不是我们想要的单选按钮。但我们可以使用CheckEdit控件来实现,示例如下:CheckEdit.Properties.CheckStyle=DevExpress.XtraEditors.Controls.CheckStyles.Radio;这样就是单选按钮了,可以实现单选功能。如果是一组单选按钮,必须确保所设定的所有单选按钮的RadioGroupIndex属性为相同的索引号。41.如何在Dev Winform中实现下拉按钮的弹出面板?可以使用PopupMenu作为DropDownButton的弹出面板,将DropDownButton的DropDownControl设置为PopupMenu。42.在DevExpress中,如何修改SimpleButton的背景色?要对simplebutton按钮控件设置背景色,除了给其Appearance下的BackColor属性赋值之外,还需要将ButtonStyle的值,设置为除Default和Office2003之外的其它值,背景色才会起效,否则没有任何改变。比如将ButtonStyle为Flat。43.使用RatingControl,如何使等级呈现半填充效果?假设等级数ItemCount为5,当前等级Rating为2.5,相邻等级值间隔ValueInterval为1,设置FillPrecision为:Half 即可呈现出半填充效果。44.DevExpress中,图片轮播效果怎么实现?使用ImageSlider控件,就可以实现该效果,而且还有两个导航按钮,可以点击向前或向后切换图片,设置好滑动间隔AutoSlideInterval:1000、滑动方向AutoSlide:Forward,设置允许轮播AllowLooping:True。45.DevExpress 中数据网格控件是什么?它有哪些主要功能?在DevExpress中,GridControl 是一个强大的数据网格控件,支持数据绑定、排序、过滤、分组、汇总、编辑等功能。46.如何在 GridControl 中实现数据绑定?GridControl控件与DataGridViewr控件一样,使用 DataSource 属性绑定数据源,例如:47.DevExpress中的图表控件是什么?它支持哪些图表类型?在DevExpress中,ChartControl 是图表控件,主要支持柱状图、折线图、饼图、散点图等多种常见的图表类型。48.什么是 SunnyUI 库?SunnyUI 是一个基于.NET 平台的开源 UI 框架,它提供了一套丰富的自定义控件和样式,用于帮助开发者快速创建美观、现代化的 Windows Forms 应用程序界面,能有效提高开发效率,减少界面设计的工作量。49.SunnyUI 库的特点是什么?丰富的控件库:包含各种常见的 UI 控件,如按钮、文本框、下拉框等,并且这些控件都具有美观的外观和良好的交互效果。主题支持:支持多种主题风格,开发者可以轻松切换应用程序的整体外观,满足不同用户的审美需求。自定义性强:允许开发者对控件的样式、颜色、大小等进行高度自定义,以实现个性化的界面设计。事件驱动编程:基于事件驱动的编程模型,方便开发者处理用户操作和界面交互,提高程序的响应性和用户体验。易于使用:提供了简洁明了的 API,即使是初学者也能快速上手,快速搭建出功能完善的 Windows Forms 应用程序界面。50.如何在项目中引入 SunnyUI 库?在一个Winform项目中引用SunnyUI,可以用以下两种方式:1)可以通过 NuGet 包管理器来引入。在 Visual Studio 中,右键点击项目,选择“管理 NuGet 程序包”,在搜索框中输入“SunnyUI”,然后选择合适的版本进行安装。2)也可以直接下载 SunnyUI 的源代码,将其添加到项目中,并添加相应的引用。gridControl.DataSource=dataTable;/以DataTable为数据源对象51.SunnyUI 中的 UIButton相比于普通 Button,有什么不同?UIButton 是 SunnyUI 库中的按钮控件,作用与Button一样。与普通 Button 相比,它具有更丰富的外观样式和交互效果。UIButton 可以支持设置边框、渐变背景、圆角等,还可以支持更多的鼠标状态变化,如鼠标悬停、按下时的特效等,并且可以轻松设置不同的主题颜色,外观更加美观和现代化。52.SunnyUI中,对控件的边框设置的相关属性有哪些?我们对边框进行统一规范,可用于按钮、卡片、弹窗等组件里。主要属性如下:RectColor:边框颜色 RectDisableColor:控件不可用时边框颜色 RectSize:边框宽度 RectSides:边框显示方向 无:不显示边框 全部:显示全部边框 顶:显示顶部边框 底:显示底部边框 左:显示左侧边框 右:显示右侧边框 注:边框显示和圆角设置相关,如果一侧的边框两端端点为圆角,则此边框必定显示。53.SunnyUI中字体图标按钮的关于图标相关的属性有哪些?在SunnyUI中,字体图标按钮是UISymbolButton,可以设置带图标的按钮,可以图标与文字结合、只有图标、图标按钮组等。关于图标相关的属性有:Symbol 字体图标 SymbolColor 图标颜色 SymbolDisableColor 不可用时图标颜色 SymbolHoverColor 悬停时图标颜色 SymbolPressColor 按下时图标颜色 SymbolSelectedColor 选择时图标的颜色 SymbolSize 字体图标大小
展开阅读全文