|
單元格類(lèi)型定義了在單元格中呈現(xiàn)的信息的類(lèi)型,以及這種信息如何顯示,用戶如何與其進(jìn)行交互。單元格類(lèi)型可以被賦給單個(gè)的單元格,整行或者整列。 用戶可以使用兩種不同的單元格類(lèi)型對(duì)表單中的單元格進(jìn)行設(shè)置: 一種是可以簡(jiǎn)單地關(guān)聯(lián)于單元格的文本格式,另一種就是顯示控件或者圖形化信息。我們?cè)诒酒榻B常用的文本單元格類(lèi)型,下一篇介紹常用的圖形單元格類(lèi)型。 通用單元格GeneralCellType對(duì)于表單中的單元格而言,通用單元格是默認(rèn)的單元格類(lèi)型。 除非你指定了其他的單元格類(lèi)型,控件通常會(huì)默認(rèn)將通用單元格類(lèi)型賦給單元格。通用單元格可以被用來(lái)作為鍵入文本或數(shù)字的單元格,在這里格式并不重要或者這里的數(shù)據(jù)類(lèi)型不依賴(lài)于特定的數(shù)據(jù)類(lèi)型。 下面的示例將一個(gè)單元格設(shè)為一個(gè)通用單元格。 FarPoint.Win.Spread.CellType.GeneralCellType gnrlcell = new FarPoint.Win.Spread.CellType.GeneralCellType();
文本單元格TextCellType通過(guò)代碼設(shè)置文本單元格的基本步驟和示例代碼如下: 通過(guò)創(chuàng)建一個(gè) TextCellType 類(lèi)的實(shí)例定義一個(gè)文本單元格。 設(shè)置文本單元格的屬性。 當(dāng)用戶輸入不可用時(shí)創(chuàng)建一個(gè)顯示給用戶的信息。 通過(guò)設(shè)置一個(gè)單元格,單元格范圍,一行,一列,或者樣式的CellType屬性為T(mén)extCellType 對(duì)象,將文本單元格類(lèi)型賦給一個(gè)單元格或者一組單元格。 FarPoint.Win.Spread.CellType.TextCellType tcell = new FarPoint.Win.Spread.CellType.TextCellType();
數(shù)字單元格NumberCellType設(shè)置精度典型的情況是,數(shù)字使用雙精度浮點(diǎn)數(shù)進(jìn)行計(jì)算和存儲(chǔ),這樣精度大約在15個(gè)數(shù)位左右。 單元格可以根據(jù)需求格式化為不同的小數(shù)位數(shù)。 例如,下列的代碼可以計(jì)算單元格區(qū)域A1到A5的區(qū)域的值的總和,并且將結(jié)果顯示在A6單元格中 存儲(chǔ)在A6單元格中的數(shù)值將會(huì)有足夠的精確度(達(dá)到了雙精度浮點(diǎn)數(shù)的上限),但是顯示在A6單元格中的文本將會(huì)取為其最近的一位小數(shù)的值。 NumberCellType nmbcell = new NumberCellType();
格式化若干數(shù)字
下面的示例通過(guò)使用預(yù)先定義的格式化屬性指派 NumberCellType 對(duì)象,對(duì)某個(gè)單元格設(shè)置成為具有某種格式的數(shù)字單元格。 FarPoint.Win.Spread.CellType.NumberCellType nmbrcell = new FarPoint.Win.Spread.CellType.NumberCellType();
顯示分?jǐn)?shù)FractionMode屬性以便以分?jǐn)?shù)格式顯示數(shù)值。你可以向一個(gè)單元格中鍵入0.01或者你可以鍵入1/100。兩種情況都會(huì)顯示為1/100。你可以使用FractionDenominatorPrecision枚舉類(lèi)型(例如要將分?jǐn)?shù)顯示為若干個(gè)四分之一,1/4等等)或者使用FractionDenominatorDigits屬性設(shè)置分母的位數(shù)。下面這張表列出了所有與數(shù)字單元格相關(guān)的分?jǐn)?shù)屬性。
FarPoint.Win.Spread.CellType.NumberCellType frac = new FarPoint.Win.Spread.CellType.NumberCellType();
使用Spin按鈕默認(rèn)情況下,Spin按鈕不顯示,但是你可以在單元格處于編輯模式時(shí)在單元格內(nèi)部顯示Spin按鈕。 你可以使用以單詞“Spin”開(kāi)頭的NumberCellType的若干屬性設(shè)置各種不同的Spin函數(shù)。 百分比單元格PercentCellType你可以使用一個(gè)百分比單元格以便將數(shù)據(jù)顯示為百分?jǐn)?shù)并且限制輸入為百分?jǐn)?shù)的值。默認(rèn)情況下,在一個(gè)百分比單元格中,如果你在運(yùn)行狀態(tài)雙擊處于編輯模式下的單元格,就會(huì)彈出一個(gè)計(jì)算器。你可以指定顯示在確定鍵和取消鍵上的文本信息。 下面的示例將一個(gè)單元格設(shè)置成為一個(gè)百分?jǐn)?shù)單元格并且顯示了一個(gè)簡(jiǎn)寫(xiě)(PRCNT)而不是百分號(hào)(%)。 FarPoint.Win.Spread.CellType.PercentCellType prctcell = new FarPoint.Win.Spread.CellType.PercentCellType();
你可以設(shè)置一個(gè)單元格用于顯示日期和時(shí)間,也可以指定要顯示的日期和時(shí)間的格式。 在Windows環(huán)境中,默認(rèn)值使用區(qū)域化的設(shè)置或者區(qū)域化的選項(xiàng)。你可以使用幾種屬性指定其格式。如果一個(gè)日期時(shí)間單元格顯示的日期和時(shí)間使用長(zhǎng)日期和時(shí)間格式,并且當(dāng)前日期和時(shí)間是“10/29/2002 11:10:01”,文本屬性返回“周二,十月,29日,2002年 11:10:01 上午”。值屬性返回所述的日期時(shí)間的對(duì)象。 默認(rèn)情況下,在日期時(shí)間單元格中,如果你在運(yùn)行時(shí)雙擊處于編輯狀態(tài)下的單元格,就會(huì)彈出一個(gè)日歷(或者時(shí)鐘)。你可以決定是否顯示這些,并且你可以指定顯示在確定和取消按鈕上的文本。 下面的示例代碼在第二行第二列的單元格中顯示一個(gè)短格式的日期和時(shí)間: FarPoint.Win.Spread.CellType.DateTimeCellType datecell = new FarPoint.Win.Spread.CellType.DateTimeCellType();
貨幣單元格CurrencyCellType貨幣符號(hào)(并且決定是否顯示) 分隔符(并且決定是否顯示) 十進(jìn)制符號(hào) 是否顯示一個(gè)主導(dǎo)的零 正數(shù)指示器(并且決定是否顯示它) 負(fù)數(shù)指示器(并且決定是否顯示它) 默認(rèn)情況下,在貨幣單元格中,如果你在運(yùn)行時(shí)雙擊處于編輯狀態(tài)的單元格,就會(huì)顯示一個(gè)彈出的計(jì)算器。你可以決定是否允許他顯示,并且你可以指定顯示在“確定”和“取消”按鈕上的文本信息。 你還可以設(shè)置可以輸入的最小和最大值, 以便用戶對(duì)其輸入進(jìn)行驗(yàn)證。 下面的示例代碼設(shè)置了一個(gè)美元的貨幣單元格并設(shè)置了一定的格式: FarPoint.Win.Spread.CellType.CurrencyCellType currcell = new FarPoint.Win.Spread.CellType.CurrencyCellType();
在默認(rèn)情況下,Spin微調(diào)按鈕是不顯示的,但是你可以在單元格的邊上顯示微調(diào)按鈕(此時(shí)單元格處于編輯模式)。你可以使用以字符Spin開(kāi)頭的CurrencyCellType屬性設(shè)置不同的微調(diào)函數(shù)。 附:Spread for Windows Forms快速入門(mén)系列文章 Spread for Windows Forms快速入門(mén)(1)---開(kāi)始使用Spread Spread for Windows Forms快速入門(mén)(2)---設(shè)置Spread表單 |
|
|