#Region "修改状态和排名。" Private Sub DatClient_UpdateCommand(ByVal sender As Object, ByVal e As DataGridCommandEventArgs) Handles DatClient.UpdateCommand Dim TxtStatus As TextBox Dim TxtLoc As TextBox TxtStatus = CType(e.Item.Cells(3).Controls(0), TextBox) TxtLoc = CType(e.Item.Cells(4).Controls(0), TextBox) If TxtStatus.Text <> "" And TxtLoc.Text <> "" Then Try ModSql.UpdateBySQL("商家表", " 状态=" & TxtStatus.Text & ", 排名分值=" & TxtLoc.Text, " ID=" & DatClient.DataKeys(CInt(e.Item.ItemIndex)).ToString) Catch ex As Exception Response.Write(ex.Message & "请检查所填写的值。" & TxtStatus.Text & " : " & TxtLoc.Text) End Try End If DatClient.EditItemIndex = -1 BindGrid() End Sub #End Region
int width = 50; currentTextbox.Width = Unit.Pixel(width);
private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemIndex > -1)
{
if (e.Item.ItemType == ListItemType.EditItem)
{
//order_num
((TextBox)e.Item.Cells[1].Controls[0]).Width = 100;
((TextBox)e.Item.Cells[2].Controls[0]).Width = 150;
}
}
}
TO: winwang168(无名) 你说的办法我试过的,没用
currenttextbox.width=40
这样会出错,我用的是VB脚本
{
int iIndex=(int)e.Item.ItemIndex;
TextBox txb =(TextBox)dgBill.Items[iIndex].FindControl("文本框模板列id");....
}然后就对txb进行任意操作了。
这样还是不行啊.
文本框模板列我没用到得,这些文本框好像是按了编辑按钮后自动出来得.
加入你想进行操作的事件里面
TextBox cc=(TextBox)DataGrid1.Items[e.Item.ItemIndex].Cells[2].Controls[0];
cc.Width=100;Cells[2]是第三列!
Private Sub DatClient_UpdateCommand(ByVal sender As Object, ByVal e As DataGridCommandEventArgs) Handles DatClient.UpdateCommand
Dim TxtStatus As TextBox
Dim TxtLoc As TextBox
TxtStatus = CType(e.Item.Cells(3).Controls(0), TextBox)
TxtLoc = CType(e.Item.Cells(4).Controls(0), TextBox)
If TxtStatus.Text <> "" And TxtLoc.Text <> "" Then
Try
ModSql.UpdateBySQL("商家表", " 状态=" & TxtStatus.Text & ", 排名分值=" & TxtLoc.Text, " ID=" & DatClient.DataKeys(CInt(e.Item.ItemIndex)).ToString)
Catch ex As Exception
Response.Write(ex.Message & "请检查所填写的值。" & TxtStatus.Text & " : " & TxtLoc.Text)
End Try
End If
DatClient.EditItemIndex = -1
BindGrid()
End Sub
#End Region
currentTextbox.Width = Unit.Pixel(width);