<script Language="c#" runat="server">
void Page_Load(object sender, EventArgs e)
{
if (!(Page.IsPostBack))
{
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
}
LinkBtnEdit.Visible=false;
}
void ModusEdit(object sender, EventArgs e)
{
PBDataGrid.PagerStyle.Visible=false;
PBDataGrid.Columns[3].Visible=true;
LinkButton1.Visible=true;
PBDataGrid.AllowPaging=false;
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
LinkBtnEdit.Visible=false;
LinkBtnView.Visible=true;
}
void ModusView(object sender, EventArgs e)
{
PBDataGrid.PagerStyle.Visible=true;
PBDataGrid.Columns[3].Visible=false;
LinkButton1.Visible=false;
PBDataGrid.AllowPaging=true;
PBDataGrid.PageSize=3;
PBDataGrid.CurrentPageIndex = 0;
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
LinkBtnView.Visible=false;
LinkBtnEdit.Visible=true;
}
protected DataSet LoadMyPBData()
{
string sourceXml = Server.MapPath("AddressBook.xml");
DataSet dataSet = new DataSet();
try
{
dataSet.ReadXml(sourceXml);
}
catch (Exception e)
{
ErrorMessage.Text = e.Message;
dataSet = null;
}
return dataSet;
}
void DEDR_Edit(object sender, DataGridCommandEventArgs e)
{
PBDataGrid.EditItemIndex = Convert.ToInt32(e.Item.ItemIndex);
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
}
void DEDR_Update(object sender, DataGridCommandEventArgs e)
{
TextBox EditText1 = null;
TextBox EditText2 = null;
TextBox EditText3 = null;
EditText1 = (TextBox)e.Item.FindControl("txtNo");
EditText2 = (TextBox)e.Item.FindControl("txtName");
EditText3 = (TextBox)e.Item.FindControl("txtPhone");
Trace.Write("Isi nilai EditText1 sekarang =", "3");
Trace.Warn("Isi nilai EditText1 sekarang =", "10");
if (EditText1.Text=="" && EditText2.Text=="" && EditText3.Text=="")
{
DataSet dataSet = LoadMyPBData();
int row = Convert.ToInt32(e.Item.ItemIndex);
dataSet.Tables[0].Rows[row].Delete();
dataSet.WriteXml(Server.MapPath("AddressBook.xml"));
PBDataGrid.EditItemIndex = -1;
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
}
else
{
DataSet dataSet = LoadMyPBData();
int row = Convert.ToInt32(e.Item.ItemIndex);
TextBox EditText = null;
EditText = (TextBox)e.Item.FindControl("txtNo");
dataSet.Tables[0].Rows[row]["No"] = EditText.Text;
EditText = (TextBox)e.Item.FindControl("txtName");
dataSet.Tables[0].Rows[row]["Name"] = EditText.Text;
EditText = (TextBox)e.Item.FindControl("txtPhone");
dataSet.Tables[0].Rows[row]["Phone"]= EditText.Text;
dataSet.WriteXml(Server.MapPath("AddressBook.xml"));
PBDataGrid.EditItemIndex = -1;
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
}
}
void DEDR_Cancel(object sender, DataGridCommandEventArgs e)
{
TextBox EditText1 = null;
TextBox EditText2 = null;
TextBox EditText3 = null;
EditText1 = (TextBox)e.Item.FindControl("txtNo");
EditText2 = (TextBox)e.Item.FindControl("txtName");
EditText3 = (TextBox)e.Item.FindControl("txtPhone");
if (EditText1.Text=="" && EditText2.Text=="" && EditText3.Text=="")
{
DataSet dataSet = LoadMyPBData();
int row = Convert.ToInt32(e.Item.ItemIndex);
dataSet.Tables[0].Rows[row].Delete();
dataSet.WriteXml(Server.MapPath("AddressBook.xml"));
PBDataGrid.EditItemIndex = -1;
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
}
else
{
PBDataGrid.EditItemIndex = -1;
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
}
}
void DEDR_Delete(object sender, DataGridCommandEventArgs e)
{
DataSet dataSet = LoadMyPBData();
int row = Convert.ToInt32(e.Item.ItemIndex);
dataSet.Tables[0].Rows[row].Delete();
dataSet.WriteXml(Server.MapPath("AddressBook.xml"));
PBDataGrid.EditItemIndex = -1;
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
}
void DEDR_Add(object sender, EventArgs e)
{
DataSet dataSet = LoadMyPBData();
DataRow newRow;
newRow = dataSet.Tables[0].NewRow();
newRow["No"] = "";
newRow["Name"] = "";
newRow["Phone"] = "";
dataSet.Tables[0].Rows.Add(newRow);
dataSet.WriteXml(Server.MapPath("AddressBook.xml"));
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
PBDataGrid.EditItemIndex = PBDataGrid.Items.Count - 1;
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
}
void DEDR_Page(Object sender, DataGridPageChangedEventArgs e)
{
PBDataGrid.CurrentPageIndex = e.NewPageIndex;
PBDataGrid.DataSource = LoadMyPBData();
PBDataGrid.DataBind();
}
</script>