欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

asp.net web頁(yè)面元素的多語(yǔ)言化(多國(guó)語(yǔ)化)實(shí)現(xiàn)分享

 更新時(shí)間:2013年02月04日 11:50:19   作者:  
開(kāi)發(fā)的一些系統(tǒng),經(jīng)常要求支持多語(yǔ)言(例如日文,英文等),接下來(lái)介紹如何實(shí)現(xiàn)asp.net開(kāi)發(fā)中web頁(yè)面實(shí)現(xiàn)頁(yè)面元素的多語(yǔ)言化(多國(guó)語(yǔ)化)感興趣的朋友可以了解下,或許對(duì)你學(xué)習(xí)有所幫助

開(kāi)發(fā)的一些系統(tǒng),經(jīng)常要求支持多語(yǔ)言(例如日文,英文等),以前大部分做法是創(chuàng)建一個(gè)資源文件,

將每一個(gè)標(biāo)簽,按鈕等標(biāo)題文字預(yù)先用各種語(yǔ)言設(shè)定保存好,

在程序中根據(jù)選擇的語(yǔ)言來(lái)顯示對(duì)應(yīng)文字。

這樣做的缺點(diǎn)是如果每次改動(dòng)或增加一個(gè)控件,都需要程序開(kāi)發(fā)人員刻意做多語(yǔ)言對(duì)應(yīng),

如果用戶(hù)想要改某些標(biāo)題的描述,還需要開(kāi)發(fā)人員改動(dòng)資源文件并替換到程序發(fā)布目錄。

經(jīng)過(guò)調(diào)查實(shí)驗(yàn),最終想了一個(gè)辦法來(lái)較好地對(duì)應(yīng)此問(wèn)題:

在每一個(gè)web頁(yè)面,設(shè)定一個(gè)只有最高級(jí)的管理權(quán)限才能看到的一個(gè)按鈕(例如叫“設(shè)定”),

來(lái)負(fù)責(zé)畫(huà)面上各固定標(biāo)題的設(shè)置,只要點(diǎn)擊這個(gè)按鈕,就通過(guò)控件遍歷的方法來(lái)顯示該頁(yè)面上所有希望控制的

控件(比如Label,button,gridview,linkbutton等),   將其各種語(yǔ)言的內(nèi)容顯示到一個(gè)小頁(yè)面上,讓用戶(hù)自己設(shè)定,

然后保存到DB。下次打開(kāi)時(shí)就按照DB設(shè)定好的內(nèi)容初期化頁(yè)面控件的標(biāo)題。

最終用戶(hù)可自由設(shè)定,也無(wú)需開(kāi)發(fā)人員不停修改。

畫(huà)面效果如下:

點(diǎn)擊“設(shè)定”

下面舉例,循環(huán)設(shè)定頁(yè)面中控件(TextBox,DropDownList等)不可用的代碼:

復(fù)制代碼 代碼如下:

Public Shared Sub LoopingControlsDisabled(ByVal oControl As Control)
Dim frmCtrl As Control
Dim btn As Button
For Each frmCtrl In oControl.Controls
If TypeOf frmCtrl Is TextBox Then
DirectCast(frmCtrl, TextBox).Enabled = False
End If
If TypeOf frmCtrl Is DropDownList Then
DirectCast(frmCtrl, DropDownList).Enabled = False
End If
If TypeOf frmCtrl Is CheckBox Then
DirectCast(frmCtrl, CheckBox).Enabled = False
End If
If TypeOf frmCtrl Is RadioButton Then
DirectCast(frmCtrl, RadioButton).Enabled = False
End If
If TypeOf frmCtrl Is FileUpload Then
DirectCast(frmCtrl, FileUpload).Enabled = False
End If
If TypeOf frmCtrl Is Button Then
btn = DirectCast(frmCtrl, Button)
'If btn.Text.Equals("關(guān)閉") OrElse btn.ID.Equals("btnClose") Then
If btn.ID.Equals("btnClose") Then
'僅關(guān)閉按鈕可用
btn.Enabled = True
Else
btn.Enabled = False
End If
End If
If frmCtrl.HasControls Then
LoopingControlsDisabled(frmCtrl)
End If
Next
End Sub

相關(guān)文章

最新評(píng)論