国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

使用C# 開發掩碼輸入文本框

2024-07-21 02:17:59
字體:
來源:轉載
供稿:網友
掩碼輸入是一種常用的控件,我記得第一次看見這種控件是在visual foxpro中!感覺功能強,不錯?,F在用c#開發asp.net應用程序也需要用到這種輸入的控件,便琢磨著自己做一個。但是由于visual foxpro中的掩碼文本框功能太強了,一時還不敢去做。網上也有一些自制的如:http://www.weste.net/2004/11-25/09162561988.html,但是感覺功能都不很適合。后來在http://www.stedy.com上看到了他們做的掩碼文本框,感覺這種方式在web應用上很適合,就把客戶端代碼down下來了!(stedy software 作的是產品,要花錢!而且很貴79.99usd,ft。)
分析了一下stedy的客戶端腳本(vbscript)他們為每一種掩碼規則都作了一個客戶端的方法。如下面是日期掩碼格式化的客戶端腳本代碼:

function maskdate(svalue, stype)

dim zmonth

zmonth = array("january", "february", "march", "april", "may", "june", "july", "august", "september", "october", "november", "december")

if len(trim(svalue)) = 0 then

maskdate = ""

setviewstate false

elseif not(isdate(svalue)) then

maskdate = "# invalid date entered #"

setviewstate true

else

select case (stype)

case "medium"

maskdate = day(datevalue(svalue)) & "-" & left(zmonth(month(datevalue(svalue)) - 1), 3) & "-" & year(datevalue(svalue))

case "long"

maskdate = zmonth(month(datevalue(svalue)) - 1) & " " & day(datevalue(svalue)) & ", " & year(datevalue(svalue))

case else

maskdate = formatdatetime(svalue, vbshortdate)

end select

setviewstate false

end if

end function

可以看到處理方式是將文本框中的字符串格式化,如果格式化成功則顯示為格式化后的字符串,否則顯示"# invalid date entered"。其他的方法與之類似,像maskcurrency, maskssn什么的。
masktextbox客戶端有兩個自定義屬性
<public:property name="masktype" value="" />
<public:property name="realvalue" value="" />
第一個是掩碼格式,第二個是文本框真實值,如:¥30.00真實值為:30.00。
目前遇到的問題有一個:
客戶端的文本框如何才能回傳給服務器上面所說的兩個屬性?
想了半天,覺著還是用一個hidden類型的控件儲存掩碼文本框的真實值。這樣回傳給服務器的時候就能通過對應的hidden控件的value屬性取得真實值!
c# 代碼片段如下:

protected override void render(htmltextwriter output)

{

output.writebegintag("input");

output.writeattribute("type","hidden");

output.writeattribute("value","");

output.writeattribute("id","__"+this.uniqueid);

output.writeattribute("name","__"+this.uniqueid);

output.write(htmltextwriter.tagrightchar);

base.render(output);

}





發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 广昌县| 乌拉特前旗| 页游| 新闻| 谢通门县| 安达市| 鞍山市| 留坝县| 达孜县| 松江区| 青阳县| 宿迁市| 稷山县| 贵州省| 贺州市| 平和县| 霍州市| 合水县| 屏东市| 秭归县| 沁水县| 汉沽区| 雷州市| 石狮市| 永丰县| 扎囊县| 万山特区| 司法| 玉门市| 翁源县| 泉州市| 鄂温| 新龙县| 临武县| 旌德县| 亚东县| 大厂| 靖远县| 通榆县| 海淀区| 金沙县|