文檔金喜正規買球>>Spread Studio for .NET使用教程>>Spread Studio for .NET使用教程:為控件創建自定義皮膚
Spread Studio for .NET使用教程:為控件創建自定義皮膚
通過將皮膚應用到Spread組件,可以快速自定義Spread工作表外觀。Spread也提供一些內置的皮膚用來創建常見的格式。您可以創建自己的自定義皮膚,并將其保存以便再次使用,和模版的使用原理相同。
使用快捷方式:
- 使用SpreadSkin對象的構造函數,并設置其參數指定皮膚的設置。
- 使用SpreadSkin對象的Apply方法,將它應用到組件。
示例:
這個示例代碼用于創建和使用自定義皮膚。
C#
fpSpread1.Sheets.Count = 3; FarPoint.Win.Spread.StyleInfo chd = new FarPoint.Win.Spread.StyleInfo(); chd.BackColor = Color.LightGreen; FarPoint.Win.Spread.StyleInfo cds = new FarPoint.Win.Spread.StyleInfo(); cds.BackColor = Color.LightGreen; FarPoint.Win.Spread.StyleInfo rhd = new FarPoint.Win.Spread.StyleInfo(); rhd.BackColor = Color.LightGreen; FarPoint.Win.Spread.StyleInfo def = new FarPoint.Win.Spread.StyleInfo(); FarPoint.Win.Spread.GradientSelectionRenderer gsr = new FarPoint.Win.Spread.GradientSelectionRenderer(); gsr.Color1 = Color.Green; gsr.Color2 = Color.LightGreen; gsr.Opacity = 50; def.BackColor = Color.Honeydew; FarPoint.Win.Spread.EnhancedInterfaceRenderer int1 = new FarPoint.Win.Spread.EnhancedInterfaceRenderer(); int1.ArrowColorDisabled = Color.Green; int1.ArrowColorEnabled = Color.LightSeaGreen; int1.ScrollBoxBackgroundColor = Color.Aqua; int1.TabShape = FarPoint.Win.Spread.EnhancedInterfaceRenderer.SheetTabShape.RoundedRectangle; int1.TabStripButtonStyle = FarPoint.Win.Spread.EnhancedInterfaceRenderer.ButtonStyles.Enhanced; int1.TabStripButtonFlatStyle = FlatStyle.Popup; int1.SheetTabBorderColor = Color.Aquamarine; int1.SheetTabLowerActiveColor = Color.DarkSeaGreen; int1.SheetTabLowerNormalColor = Color.DarkOliveGreen; int1.SheetTabUpperActiveColor = Color.ForestGreen; int1.SheetTabUpperNormalColor = Color.LightSeaGreen; int1.SplitBarBackgroundColor = Color.Aquamarine; int1.SplitBarDarkColor = Color.DarkGreen; int1.SplitBarLightColor = Color.LightGreen; int1.SplitBoxBackgroundColor = Color.Green; int1.SplitBoxBorderColor = Color.LimeGreen; int1.TabStripBackgroundColor = Color.Aquamarine; FarPoint.Win.Spread.NamedStyle chstyle = new FarPoint.Win.Spread.NamedStyle("ColumnHeaders", "HeaderDefault", chd); FarPoint.Win.Spread.NamedStyle corner = new FarPoint.Win.Spread.NamedStyle("CornerHeaders", "HeaderDefault", cds); FarPoint.Win.Spread.NamedStyle rowhstyle = new FarPoint.Win.Spread.NamedStyle("RowHeaders", "HeaderDefault", rhd); FarPoint.Win.Spread.NamedStyle ds = new FarPoint.Win.Spread.NamedStyle("Default", "DataAreaDefault", def); FarPoint.Win.Spread.MarqueeFocusIndicatorRenderer focusrend = new FarPoint.Win.Spread.MarqueeFocusIndicatorRenderer(Color.LightSeaGreen, 2); FarPoint.Win.Spread.EnhancedScrollBarRenderer ScrollBarR = new FarPoint.Win.Spread.EnhancedScrollBarRenderer(Color.Green, Color.LightGreen, Color.Green, Color.Aqua,Color.DarkGreen, Color.DarkSeaGreen, Color.Turquoise, Color.SpringGreen, Color.Teal, Color.PaleGreen, Color.ForestGreen); FarPoint.Win.Spread.SpreadSkin skin = new FarPoint.Win.Spread.SpreadSkin("MySkin", int1, ScrollBarR, focusrend, gsr, ds, chstyle, rowhstyle, corner); skin.Apply(fpSpread1); VB
' Create a custom skin. FpSpread1.Sheets.Count = 3 Dim chd As New FarPoint.Win.Spread.StyleInfo chd.BackColor = Color.LightGreen Dim cds As New FarPoint.Win.Spread.StyleInfo cds.BackColor = Color.LightGreen Dim rhd As New FarPoint.Win.Spread.StyleInfo rhd.BackColor = Color.LightGreen Dim def As New FarPoint.Win.Spread.StyleInfo Dim gsr As New FarPoint.Win.Spread.GradientSelectionRenderer gsr.Color1 = Color.Green gsr.Color2 = Color.LightGreen gsr.LinearGradientMode = Drawing2D.LinearGradientMode.BackwardDiagonal gsr.Opacity = 50 def.BackColor = Color.Honeydew Dim int As New FarPoint.Win.Spread.EnhancedInterfaceRenderer int.ArrowColorDisabled = Color.Green int.ArrowColorEnabled = Color.LightSeaGreen int.ScrollBoxBackgroundColor = Color.Aqua int.TabShape = FarPoint.Win.Spread.EnhancedInterfaceRenderer.SheetTabShape.RoundedRectangle int.TabStripButtonStyle = FarPoint.Win.Spread.EnhancedInterfaceRenderer.ButtonStyles.Enhanced int.TabStripButtonFlatStyle = FlatStyle.Popup int.SheetTabBorderColor = Color.Aquamarine int.SheetTabLowerActiveColor = Color.DarkSeaGreen int.SheetTabLowerNormalColor = Color.DarkOliveGreen int.SheetTabUpperActiveColor = Color.ForestGreen int.SheetTabUpperNormalColor = Color.LightSeaGreen int.SplitBarBackgroundColor = Color.Aquamarine int.SplitBarDarkColor = Color.DarkGreen int.SplitBarLightColor = Color.LightGreen int.SplitBoxBackgroundColor = Color.Green int.SplitBoxBorderColor = Color.LimeGreen int.TabStripBackgroundColor = Color.Aquamarine Dim chstyle As New FarPoint.Win.Spread.NamedStyle("ColumnHeaders", "HeaderDefault", chd) Dim corner As New FarPoint.Win.Spread.NamedStyle("CornerHeaders", "HeaderDefault", cds) Dim rowhstyle As New FarPoint.Win.Spread.NamedStyle("RowHeaders", "HeaderDefault", rhd) Dim ds As New FarPoint.Win.Spread.NamedStyle("Default", "DataAreaDefault", def) Dim focusrend As New FarPoint.Win.Spread.MarqueeFocusIndicatorRenderer(Color.LightSeaGreen, 2) Dim ScrollBarR As New FarPoint.Win.Spread.EnhancedScrollBarRenderer(Color.Green, Color.LightGreen, Color.Green, Color.Aqua, Color.DarkGreen, Color.DarkSeaGreen, Color.Turquoise, Color.SpringGreen, Color.Teal, Color.PaleGreen, Color.ForestGreen) Dim skin As New FarPoint.Win.Spread.SpreadSkin("MySkin", int, ScrollBarR, focusrend, gsr, ds, chstyle, rowhstyle, corner) skin.Apply(FpSpread1)