|
分類:[.NET 全般]
開発環境 OS: WindowsXP SP3 言語: VisualStudio2010 VB Microsoft Visual Studio 2010 Version 10.0.30319.1 RTMRel Microsoft .NET Framework Version 4.0.30319 RTMRel
表記のとおりです DetailsViewの編集モード時のテキストの値が取得できません。 <script runat="server"> Sub DetailView1_ItemCommand(ByVal sender As Object, ByVal e As DetailsViewCommandEventArgs)
If e.CommandName = "Edit" Then Dim row As DetailsViewRow = DetailsView1.Rows(0) Dim row1 As DetailsViewRow = DetailsView1.Rows(2) Dim row2 As DetailsViewRow = DetailsView1.Rows(3) Dim row3 As DetailsViewRow = DetailsView1.Rows(4)
Dim name As String = row.Cells(0).Text Dim name1 As String = row1.Cells(1).Text Dim name2 As String = row2.Cells(1).Text Dim name3 As String = row3.Cells(1).Text
Dim item As New ListItem(name) Dim item1 As New ListItem(name1) Dim item2 As New ListItem(name2) Dim item3 As New ListItem(name3) End If End Sub
</script>
<asp:DetailsView ID="DetailsView1" runat="server" AutoGenerateRows="False" DataSourceID="SqlDataSource1" Height="50px" ForeColor="Black" OnItemCommand="DetailView1_ItemCommand"> <EditRowStyle BackColor="#FFFFFF" Font-Bold="True" ForeColor="Black" /> <Fields> <asp:BoundField DataField="AAA" HeaderText="AAA" SortExpression="AAA" ReadOnly="True" /> <asp:TemplateField HeaderText="BBB" SortExpression="BBB"> <ItemTemplate> <asp:Label ID="Label2" runat="server" Text='<%# Bind("BBB") %>'></asp:Label> </ItemTemplate> <EditItemTemplate> <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("BBB") %>' onKeyDown="javascript:onKeyDownEvent(event);"></asp:TextBox> </EditItemTemplate>
上記コーディングで item には値が取得できました しかしitem2以降は全て空っぽになってしまいます。 おそらく asp側の記述で BoundFieldで指定するか Labelやtextで指定しているかの違いとはおもいます。
BoundFieldはうまく取得できているようです。
よろしくおねがいします
|