1

ASP.Net asp:ControlParameter ControlID は、ASP:label の代わりにパブリック共有変数にすることはできますか?

DataSource のパラメーターとして asp:label を使用していましたが、ラベルの代わりにパブリック共有変数を使用したいと考えています。

これは、asp:label を使用したパラメーターのマークアップです。

<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 フォームが実行されている場合、パブリック共有変数に変更しても何も起こりません。

続行するには、他に何をする必要があるか教えていただけますか?

* アップデート *

Marks の提案を使用して、asp:QueryStringParameter を実行する方法を見つけましたが、値を設定する方法はまだわかりません。これは asp:QueryStringParameter としてのパラメータです

<asp:QueryStringParameter
    Name="DayOfWeekMonday" 
    QueryStringField="QSDayOfWeekMonday" />

ImageButtonInsertDayOfWeekMonday_Click サブルーチンで QSDayOfWeekMonday を設定するにはどうすればよいですか?

私は試した:

QSDayOfWeekMonday = False

しかし、「宣言されていません」というエラーが発生しました。

* 完全なマークアップとコード ビハインド コーディング *

http://pastebin.com/embed_js.php?i=kye3c2U8

4

2 に答える 2