2
Answers

Custom Server Control - Button Click Event

Photo of Justin

Justin

16y
3.4k
1

I cannot get the button event inside my custom server control to raise. Below is an example written in 3.5. I believe my events are in order from examples listed online. Any help?

[ToolboxData("<{0}:TestButton runat=server></{0}:TestButton>")]public class TestButton : WebControl

{

public Button Tester { get; set; }

public Label ClickedIndicator { get; set; }

protected override void CreateChildControls()
{
   base.CreateChildControls();

   Tester = new Button();
   Tester.ID =
"btnTest";
   Tester.Text =
"Increment Count";   Tester.Click += new EventHandler(Tester_Click);
   this.Controls.Add(Tester);

   ClickedIndicator =
new Label();
   ClickedIndicator.ID =
"lblClickCount";
   ClickedIndicator.Text =
"not clicked";
   this.Controls.Add(ClickedIndicator);
}

protected void Tester_Click(object sender, EventArgs e)
{
   ClickedIndicator.Text =
"clicked";
}

 

Answers (2)

0
Photo of sham suman
NA 59 0 14y
Hi,

You can use Acceptchange() method after deleting code. Just check this.
Change the table name as per ur TableName.
Insted of session You can use direct table from DataAdapter. Just assign table name. Check this code...

Write this code in GridView1 RowDelete Command event.

protected void GridView1_RowDeleted(object sender, GridViewDeletedEventArgs e)
    {      
        int i;       
        DataSet objds = (DataSet)Session["ObjDataSet"];     //Assign table from database here.
        DataTable dtNewAct = (DataTable)objds.Tables[0];
        i = GridView1.SelectedIndex;
        for (int iRow = 0; iRow < objds.Tables[0].Rows.Count - 1; iRow++)
        {
            if (i == iRow)
            {
                if (objds.Tables[0].Rows[i].RowState != DataRowState.Deleted)
                {
                    objds.Tables[0].Rows[i].Delete();
                    objds.Tables[0].AcceptChanges();
                    Session["ObjDataSet"] = objds;
                }
            }
        }

    }

Accepted
0
Photo of Sam Hobbs
NA 28.7k 1.3m 14y
0
Photo of adam abdul
NA 8 0 14y
hai,
Thanks for kind response, i tried ur code but it fails to get table name.
Here is the code below

Note: adduser is my table name

  private void simpleButton1_Click(object sender, EventArgs e)
        {
            if (dataGridView1.SelectedRows.Count > 0)
            {
                dataGridView1.Rows.RemoveAt(this.dataGridView1.SelectedRows[0].Index);
            }

            addUserTableAdapter.Update(checkOutDataSet.Tables[adduser]);           
           
        }


error message:

Error    1    The name 'adduser' does not exist in the current context  
0
Photo of DRISHTY
NA 592 0 14y

Add following line after your delete logic :
sqllAdap.Update(ds.Tables[TBL_NAME]);