设置ASP:ControlParameter使用变量从中获取值

时间:2013-01-25 16:22:20

标签: asp.net vb.net controlparameter

在ASP.Net VB.Net代码隐藏文件中,我们有这个变量:

Public Shared blnTuesdayCheckBoxState As Boolean

我们正在尝试将该变量用于ASP:ConrolParameter,但似乎没有正确设置所有内容。

你能告诉我我需要做些什么来纠正它吗?

这是在DataSource标记中使用的ASP:ControlParameter:

<UpdateParameters>
    <asp:Parameter Name="DayOfWeekMonday" Type="String" />

    <asp:ControlParameter 
        ControlID="blnTuesdayCheckBoxState" 
        Name="DayOfWeekTuesday" 
        PropertyName="Text" 
        Type="String" />

    <asp:Parameter Name="DayOfWeekWednesday" Type="String" />
    <asp:Parameter Name="DayOfWeekThursday" Type="String" />
    <asp:Parameter Name="DayOfWeekFriday" Type="String" />
    <asp:Parameter Name="DayOfWeekSaturday" Type="String" />
    <asp:Parameter Name="DayOfWeekSunday" Type="String" />
    <asp:Parameter Name="StartTime" Type="String" />
    <asp:Parameter Name="EndTime" Type="String" />
    <asp:Parameter Name="ClassID" Type="Int32" />
    <asp:Parameter Name="TeacherID" Type="Int32" />
    <asp:Parameter Name="ID" />
</UpdateParameters>

如果我们可以让DayOfWeekTuesday工作,我们将在本周的其他日子也这样做。

在DetailsView中是这个ImageButton:

<asp:TemplateField HeaderText="Tuesday:">
    <EditItemTemplate>
        <asp:ImageButton 
            ID="ImageButtonEditDayOfWeekTuesday" 
            runat="server" 
            ImageUrl='<%# getChecked(Eval("DayOfWeekTuesday"))%>' 
            Height="15"
            Width="15" 
            OnClick="ImageButtonDayOfWeekTuesdayEdit_Click" 
            CausesValidation="False">
        </asp:ImageButton>
    </EditItemTemplate>
</asp:TemplateField>

当用户点击ImageButton时,执行此代码以填充变量:

Protected Sub ImageButtonDayOfWeekTuesdayEdit_Click(sender As Object, e As ImageClickEventArgs)

    '     Dim chkTheCheckBox As New CheckBox
    Dim imgTheImageButton As New ImageButton

    '        chkTheCheckBox = DetailsView.FindControl("CheckBoxEditDayOfWeekTuesday")
    imgTheImageButton = DetailsView.FindControl("ImageButtonEditDayOfWeekTuesday")

    If blnTuesdayCheckBoxState = True Then
        imgTheImageButton.ImageUrl = "../../Images/unchecked.png"

        '           chkTheCheckBox.Checked = False
        blnTuesdayCheckBoxState = False
    Else
        imgTheImageButton.ImageUrl = "../../Images/checked.png"

        '          chkTheCheckBox.Checked = True
        blnTuesdayCheckBoxState = True
    End If
End Sub

上面的代码模拟了CheckBox的滴答声,只是它是使用的图像而不是实际的CheckBox。

原始编码用于使用实际的CheckBox来存储要保存到数据库的值,如注释掉的代码所示,但我们希望用ImageButtons替换它们。

此外,如果我使用ASP:Label for ASP:ControlParameter,那么一切正常。由于一周中有7天我们想要使用变量而不是在网页上放置许多标签。

0 个答案:

没有答案