最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

無法將類型為“System.Web.UI.WebControls.HiddenField”的對象強制轉(zhuǎn)換為類型的錯誤的解決

 更新時間:2011年12月23日 00:52:39   作者:  
無法將類型為“System.Web.UI.WebControls.HiddenField”的對象強制轉(zhuǎn)換為類型的錯誤的解決方法
本文章將解決:
1.解釋什么是System.Web.UI.LiteralControl
2.為什么會經(jīng)常發(fā)生法將類型為“System.Web.UI.WebControls.HiddenField”的對象強制轉(zhuǎn)換為類型……的錯誤
3.GridView控件中查找模板列的控件(解釋Cells和Controls)

在用GridView控件綁定數(shù)據(jù)時,經(jīng)常會要將某列轉(zhuǎn)換為模板列,如:
我們在頁面中拉一控件GridView,名字:GVData,將其中某列轉(zhuǎn)換為模板列,在這里我們轉(zhuǎn)換的是列“所屬單位”,頁面模板列部分代碼如下:
<asp:TemplateField HeaderText="所屬單位">
<EditItemTemplate>
<asp:HiddenField ID="HDFxz" runat="server" Value='<%#Bind("所屬單位") %>' />
<asp:DropDownList ID="DDLxz" runat="server" />
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# return2dwNAME(Eval("所屬單位").ToString()) %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
由上大家可以看到,這個模板列的編輯模板下有兩個控件,一個是隱藏域HDFxz,一個是下拉列表DDLxz,然后我們在.cs頁面中取下拉列表DDLxz的值,部分代碼:
protected void GVData_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
string dwid = ((DropDownList)this.GVData.Rows[e.RowIndex].Cells[2].Controls[1]).SelectedValue;

}
注:以上是修改數(shù)據(jù)時觸發(fā)的,我們放到這里只是為了說明問題,不是全部代碼,沒有實際意義。
我們來解釋下,e.RowIndex是取得當(dāng)前修改數(shù)據(jù)行的索引值,this.GVData.Rows[e.RowIndex]這個是由當(dāng)前索引獲得當(dāng)前行,Cells[2]表示是當(dāng)前行下的第三列(從0開始算起),Controls[1]表示第三列下的第二個控件(也是從0算起),這樣解釋后我們就可以明白了,dwid 的值應(yīng)當(dāng)是要取的是下拉列表框DDLxz的值了(因為下拉列表框在編輯模板中屬于第二個控件,這個我們在上面提到過)。
運行后會出錯:無法將類型為“System.Web.UI.LiteralControl”的對象強制轉(zhuǎn)換為類型“System.Web.UI.WebControls.DropDownList”。

可能大家都很納悶了,再返回去檢查一遍,沒有數(shù)錯啊,這時我們就要看看到底什么是System.Web.UI.LiteralControl控件了?
System.Web.UI.LiteralControl:簡單的解釋是任何不需要在服務(wù)器上處理的其他字符串.
這也就是說我們上面的編輯模板存在“不需要在服務(wù)器上處理的其他字符串”,那會是什么在搞鬼呢。
經(jīng)過分析這句話“其他字符串”,然后再看下模板列的源碼,懷疑是由于生成了模板列后產(chǎn)生了空格產(chǎn)生的,因為空格也是字符串啊,所以將源碼修改為:
<asp:TemplateField HeaderText="所屬單位">
<EditItemTemplate><asp:HiddenField ID="HDFxz" runat="server" Value='<%#Bind("所屬單位") %>' /><asp:DropDownList ID="DDLxz" runat="server" /></EditItemTemplate>
<ItemTemplate>
也就是說把EditItemTemplate標(biāo)簽之間的空格去掉。這時我們再運行,OK,大功告成啊,呵呵,原來真的是空格在搞鬼?。?net把空格當(dāng)成了System.Web.UI.LiteralControl了,呵呵!

相關(guān)文章

  • .net壓縮功能實現(xiàn)方法

    .net壓縮功能實現(xiàn)方法

    這篇文章主要介紹了.net壓縮功能實現(xiàn)方法,需要的朋友可以參考下
    2014-02-02
  • asp.net及javascript判斷是否手機訪問的方法

    asp.net及javascript判斷是否手機訪問的方法

    這篇文章主要介紹了asp.net及javascript判斷是否手機訪問的方法,結(jié)合實例形式對比分析了asp.net及javascript實現(xiàn)判斷訪問端類型的相關(guān)技巧,需要的朋友可以參考下
    2016-06-06
  • ASP.NET Core中如何利用Csp標(biāo)頭對抗Xss攻擊

    ASP.NET Core中如何利用Csp標(biāo)頭對抗Xss攻擊

    這篇文章主要給大家介紹了關(guān)于ASP.NET Core中如何利用Csp標(biāo)頭對抗Xss攻擊的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用ASP.NET Core具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • .Net頁面局部更新引發(fā)的思考

    .Net頁面局部更新引發(fā)的思考

    這篇文章主要是由.Net頁面局部更新引發(fā)的一系列思考,整理了實現(xiàn)局部更新的解決方案及改進方案,感興趣的小伙伴們可以參考一下
    2016-06-06
  • Consul的搭建和.Net5的注冊和獲取方法(Win10簡單版)

    Consul的搭建和.Net5的注冊和獲取方法(Win10簡單版)

    Consul?是一個用來實現(xiàn)分布式系統(tǒng)服務(wù)發(fā)現(xiàn)與配置的開源工具。接下來通過本文給大家介紹win10下Consul的搭建和.Net5的注冊和獲取方法,感興趣的朋友一起看看吧
    2022-01-01
  • .NET程序性能監(jiān)控系統(tǒng)Elastic?AMP的使用方法

    .NET程序性能監(jiān)控系統(tǒng)Elastic?AMP的使用方法

    這篇文章介紹了.NET程序性能監(jiān)控系統(tǒng)Elastic?AMP的使用方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-11-11
  • .NET使用Collections.Pooled提升性能優(yōu)化的方法

    .NET使用Collections.Pooled提升性能優(yōu)化的方法

    這篇文章主要介紹了.NET使用Collections.Pooled性能優(yōu)化的方法,今天要給大家分享類庫Collections.Pooled,它是通過池化內(nèi)存來達到降低內(nèi)存占用和GC的目的,另外也會帶大家看看源碼,為什么它會帶來這些性能提升,一起通過本文學(xué)習(xí)下吧
    2022-05-05
  • asp.net實現(xiàn)固定GridView標(biāo)題欄的方法(凍結(jié)列功能)

    asp.net實現(xiàn)固定GridView標(biāo)題欄的方法(凍結(jié)列功能)

    這篇文章主要介紹了asp.net實現(xiàn)固定GridView標(biāo)題欄的方法,即凍結(jié)列功能,涉及GridView結(jié)合前端js操作數(shù)據(jù)顯示的相關(guān)技巧,需要的朋友可以參考下
    2016-06-06
  • asp.net 打印控件使用方法

    asp.net 打印控件使用方法

    做過很多的Web項目,大多數(shù)在打印頁面內(nèi)容的時候,采用的都是通過Javascript調(diào)用系統(tǒng)內(nèi)置的打印方法進行打印,也就是調(diào)用 PrintControl.ExecWB(?,?)實現(xiàn)直接打印和打印預(yù)覽功能。
    2010-01-01
  • ASP.NET MVC驗證碼功能實現(xiàn)代碼

    ASP.NET MVC驗證碼功能實現(xiàn)代碼

    ASP.NET MVC驗證碼功能實現(xiàn)代碼,需要的朋友可以參考一下
    2013-06-06

最新評論

克什克腾旗| 满城县| 普陀区| 洛浦县| 项城市| 措美县| 丰原市| 黄骅市| 侯马市| 沧州市| 扎兰屯市| 开平市| 大英县| 靖州| 腾冲县| 永济市| 皮山县| 丰都县| 枞阳县| 寿阳县| 从江县| 循化| 马龙县| 江西省| 榆树市| 贡觉县| 金寨县| 乐至县| 泰和县| 尚义县| 资源县| 清河县| 郑州市| 望谟县| 台北县| 义乌市| 拉萨市| 涟水县| 贵阳市| 赣榆县| 新乡县|