ASP.Net asp:ControlParameter ControlID是一個公共共享變量而不是ASP:label?ASP.Net asp:ControlParameter ControlID是一個公共共享變量而不是asp:label嗎?
我們使用asp:label作爲DataSource的參數,但現在想要使用公共共享變量而不是標籤。
這是使用asp:標籤的參數標記。
<asp:ControlParameter
ControlID="LabelCheckBoxMonday"
Name="DayOfWeekMonday"
PropertyName="Text"
Type="String" />
我們在代碼隱藏中添加了這個公共共享變量。
Public Shared blnDayOfWeekMonday As Boolean
我們已將參數的標記更改爲此。
<asp:ControlParameter
ControlID="blnDayOfWeekMonday"
Name="DayOfWeekMonday"
PropertyName="Text"
Type="String" />
這是將值放入變量中的編碼。用於爲標籤執行此操作的原始編碼已被註釋掉。
Protected Sub ImageButtonInsertDayOfWeekMonday_Click(sender As Object, e As ImageClickEventArgs)
Dim imgTheImageButton As New ImageButton
imgTheImageButton = DetailsView.FindControl("ImageButtonInsertDayOfWeekMonday")
If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
' LabelCheckBoxMonday.Text = False
blnDayOfWeekMonday = False
Else
imgTheImageButton.ImageUrl = "../../Images/checked.png"
' LabelCheckBoxMonday.Text = True
blnDayOfWeekMonday = True
End If
End Sub
所有這一切都是下面的InsertCommand的一部分:
InsertCommand=
"INSERT INTO [TeacherSchedule]
([DayOfWeekMonday],
[DayOfWeekTuesday],
[DayOfWeekWednesday],
[DayOfWeekThursday],
[DayOfWeekFriday],
[DayOfWeekSaturday],
[DayOfWeekSunday],
[StartTime],
[EndTime],
[ClassID],
[TeacherID])
VALUES (@DayOfWeekMonday,
@DayOfWeekTuesday,
@DayOfWeekWednesday,
@DayOfWeekThursday,
@DayOfWeekFriday,
@DayOfWeekSaturday,
@DayOfWeekSunday,
@StartTime,
@EndTime,
@ClassID,
@TeacherID)"
當Web窗體運行沒有改變它向公衆共享變量之後發生的。
你能告訴我還有什麼我需要做的繼續?
*更新*
使用標記建議,我發現瞭如何做一個asp:QueryStringParameter但仍然不知道如何用一個值來填充它。這是參數作爲一個asp:QueryStringParameter
<asp:QueryStringParameter
Name="DayOfWeekMonday"
QueryStringField="QSDayOfWeekMonday" />
如何填充QSDayOfWeekMonday在ImageButtonInsertDayOfWeekMonday_Click子程序?
我想:
QSDayOfWeekMonday = False
,但有一個 「未聲明」 的錯誤。
*完整的標記和代碼隱藏編碼*
http://pastebin.com/embed_js.php?i=kye3c2U8
blnDayOfWeekMonday不是控件,所以不能使用ControlID。說實話,這兩種方式都很糟糕。爲什麼不使用查詢字符串參數? – 2013-04-25 14:49:47
感謝您的回覆Mark。你能告訴我們如何使用查詢字符串參數以及所需的標記和代碼隱藏編碼將真假存儲到@DayOfWeekMonday中嗎?我還包括InsertCommand,所以你知道我們正在嘗試做什麼。 – 2013-04-25 14:58:45
謝謝pastebin樣本。 DayOfWeekMonday,作爲一個靜態的,意味着每個人都會分享相同的價值。我不認爲這就是你想要的。另外,我相信DefaultValue是一個字符串,所以你需要確保它是一個字符串值。 – 2013-04-25 18:48:31