Step Step membuat Web Data Static
Assalamu alaikum wr.wb.
Semangat pagi Guest
Masih pagi ni lanjut begadang dari semalem ni.malam minggun kelabu ni gak punya cewek .
Dari pada bengong tak bermutu ,saya bongkar bongkar folder di kompuer .
Ok deh tanpa panjang lebar "kalo panjang sakit kata cew*k ,lebar gak enak buat cow*k". ya gak guest
Semangat pagi Guest
Masih pagi ni lanjut begadang dari semalem ni.malam minggun kelabu ni gak punya cewek .
Dari pada bengong tak bermutu ,saya bongkar bongkar folder di kompuer .
Ok deh tanpa panjang lebar "kalo panjang sakit kata cew*k ,lebar gak enak buat cow*k". ya gak guest
Membuat Data Statis Di Web
1. Kita create
project yang kosong.
2. Kita tambah
kan web form pada project.
Disini saya gunakan nama Default.aspx
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Data Table Statis</title> di isi sesui judul form
<style>
body
{
font-family:Arial; Di isi dengan fort
yang dingin kan untuk di body
font-size:12px;Di isi dengan
ukuran fort yang dingin kan untuk di body
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div>
<h1> Menentukan besar kecil ya ukuran front
Data Table Statis
</h1>
</div>
</form>
</body>
</html>
3. Kita Set
start page pada form web Default.aspx.
Untuk melihat hasil.
Untuk
step selanjutnya kita stop untuk dapat menambah objeck.
Kita
akan menambah kan object DataTable
dengan cara menambah kan GridView dengan cara double klik di toolbox. Lalu kita
tabahkan seperti contoh dibawah.
<body>
<form id="form1" runat="server">
<div>
<h1>Contoh Data Table Statis</h1>
<h4>Daftar Mahasiswa</h4>
<asp:GridView ID="GridView1" runat="server"
AutoGenerateSelectButton="true" ini
yang perlu di tambah kan
AutoGenerateColumns="true"> ini yang perlu di tambah kan
</asp:GridView>
</div>
</form>
</body>
4. Kita klik
kanan pilih view code pada lembar project Default.aspx.
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
DisplayData(); kita buat kan fungsi tampil
}
}
private void DisplayData()
{
DataTable dt = new DataTable(); Di buat objek table
dt.Columns.Add("NIM", typeof(string));Di tambah kolom sesui field
dt.Columns.Add("Nama", typeof(string));
dt.Columns.Add("Jurusan", typeof(string));
dt.Columns.Add("Alamat", typeof(string));
dt.Columns.Add("Email", typeof(string));
dt.Columns.Add("Telepon", typeof(string));
DataRow dr = dt.NewRow();Di
buat ka nisi pada baris dengan cara
dr[0] = "31122369"; membuat
objek DataRow.
dr[1] = "khoirul mustofa";
dr[2] = "teknik informatika";
dr[3] = "Rembang";
dr[4] = "khoirul.mustofa2014@gmail.com";
dr[5] = "081230400086";
dt.Rows.Add(dr); kita masukan data ke dalam baris
GridTampil.DataSource = dt;perintah untuk memangil data ke GridView
GridTampil.DataBind();perintah untuk menampilkan data ke GridView
}
}
5. Lalu kita
tampilkan dengan cara kita run .maka akan muncul seperti ini.

6. Kita buat
sedikit styel untuk mempercantik table.
<style>
body ini sesuai dengan
bagian yang akan di modif
{
font-family:'Comic Sans MS';
font-size:12px;
}
table th ini sesuai dengan bagian yang akan di modif
{
background-color:#b6ff00;
padding:120px,130px;
}
table tr ini sesuai dengan
bagian yang akan di modif
{
padding:200px,130px;
background-color:yellow;
}
</style>
7. kita buat coloumn manual dengan set sebagai berikut
<asp:GridView ID="GridTampil" runat="server"
AutoGenerateColumns="false"> kita set false
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server"
Text="Detail"
CommandName="Deytail"
CommandArgument='<%#Eval("NIM") %>'/> di set NIM
</ItemTemplate>
</asp:TemplateField> ItemStyle-Width untuk sett lebar column
<asp:BoundField DataField="NIM" HeaderText="NIM" ItemStyle-Width="200px" />
<asp:BoundField DataField="Nama" HeaderText="Nama" />
<asp:BoundField DataField="Jurusan" HeaderText="Jurusan" />
<asp:BoundField DataField="Alamat" HeaderText="Alamat" />
<asp:BoundField DataField="Email" HeaderText="Email" />
<asp:BoundField DataField="Telepon" HeaderText="Telepon" />
</Columns>
</asp:GridView>
Maka tampilan sebagai berikut :

8.
Kita
buat ivent pada tombol detail dengan memunculkan form pup-up.
dengan cara
kita set Design kita sorot pada grid
view pilih properties sorot event (tanda petir)
pilih
RowCommand klik double.

Maka akan
di bawa ke Default.aspx.cs
kita isi dengan kode sbb:
protected void GridTampil_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Detail")
{
ScriptManager.RegisterStartupScript(this, typeof(string), "onclik",
string.Format("alert('{0}')",
e.CommandArgument.ToString()), true);
}
}

Jika
munncul berarti NIM berhasil kita ambil.
9.
Kita
buat kan from PUP UP dengan cara add pada project.Disini dengan contoh FormDetail.aspx.
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<table>
<tr>
<td style="width:150px">NIM</td>
<td>:</td>
<td style="width:200px">
<asp:TextBox ID="txtNim" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td>Nama</td>
<td>:</td>
<td>
<asp:TextBox ID="txtNama" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td>Jurusan</td>
<td>:</td>
<td>
<asp:DropDownList ID="DDLJurusan" runat="server">
<asp:ListItem>Teknik Informatika</asp:ListItem>
<asp:ListItem>Teknik Lingkungan</asp:ListItem>
<asp:ListItem>Teknik Arsitektur</asp:ListItem>
<asp:ListItem>Teknik Fisika</asp:ListItem>
<asp:ListItem>Teknik Kimia</asp:ListItem>
</asp:DropDownList></td>
</tr>
<tr>
<td>Alamat</td>
<td>:</td>
<td>
<asp:TextBox ID="txtAlamat" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td>
<asp:TextBox ID="txtEmail" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td>Telepon</td>
<td>:</td>
<td>
<asp:TextBox ID="txtTelepon" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td></td>
<td></td>
<td>
<asp:Button ID="btnSave" runat="server" Text="Simpan" />
<asp:Button ID="btnCancel" runat="server" Text="Batal" OnClientClick="window.close();" />
</tr>
</td>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
Ini adalah bentuk kode pada FormDetail.aspx yang
mana akan menjadi

10. Untuk Dapat memanggil FormDetail.aspx saat
linkbutton detail di klik maka harus di setting pada Default.aspx
if (e.CommandName == "Detail")
{
string script = string.Format("showModalDialog
('FormDetail.aspx?NIM={0}','','dialogwidth: 400, dialogheight:400');", e.CommandArgument.ToString());
ScriptManager.RegisterStartupScript(this, typeof(string), "onclik",
script, true);
}

Kita tambah kan <asp:ScriptManager yang berada pada toolbox.
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">

11. Menampilkan data yang ada di Grid untuk tampil di dalm
fromdetail.aspx
Kita buat kan property
public partial class Default : System.Web.UI.Page
{
public DataTable DataSource
{
get
{
if (Session["DataSource"] == null) memakai session karena
formnya terpisah,supaya data tetap di kenal dalam semua form
{
Session["DataSource"] =
createEmptyDataSource();
}
return (DataTable)Session["DataSource"];
}
set
{
Session["DataSource"] = value;
}
}
private DataTable createEmptyDataSource() di
copy dari DisplayData()
{
DataTable dt = new DataTable("DataSource");
dt.Columns.Add("NIM", typeof(string));
dt.Columns.Add("Nama", typeof(string));
dt.Columns.Add("Jurusan", typeof(string));
dt.Columns.Add("Alamat", typeof(string));
dt.Columns.Add("Email", typeof(string));
dt.Columns.Add("Telepon", typeof(string));
return dt;
}
Jika DataTable sudah di simpan dalam session maka
setting yang di bawah ini
private void DisplayData()
{
DataTable dt = new DataTable(); Di buat objek table
dt.Columns.Add("NIM", typeof(string));Di tambah kolom sesui field
dt.Columns.Add("Nama", typeof(string));
dt.Columns.Add("Jurusan", typeof(string));
dt.Columns.Add("Alamat", typeof(string));
dt.Columns.Add("Email", typeof(string));
dt.Columns.Add("Telepon", typeof(string));
Mejadi
private void DisplayData()
{
DataTable dt = DataSource;
DataRow dr = dt.NewRow();
dr[0] = "31122369";
dr[1] = "khoirul mustofa";
dr[2] = "teknik informatika";
dr[3] = "Rembang";
dr[4] = "khoirul.mustofa2014@gmail.com";
dr[5] = "081230400086";
dt.Rows.Add(dr);
Jika DataSource di simpan dalam session
maka akan di kenal maka di buat kan juga dalam form yang lain ,maka properties
di atas juga perlu ada di formDetai.aspx
Maka akan tampil
seperti ini.

12. Kita buat fungsi simpan dengan cara buka fromdetail
dalal option Design.klik double button save. Kita buat kan fungsi sebagai
berikut:
protected void btnSave_Click(object sender, EventArgs e)
{
if (IsValidOnSave())
{
string nim = Request.QueryString["NIM"];
DataRow[] rows =
DataSource.Select(string.Format("NIM='{0}'", nim));
if (rows.Length > 0)
{
rows[0][0] =
txtNim.Text;
rows[0][1] =
txtNama.Text;
rows[0][2] =
DDLJurusan.SelectedValue;
rows[0][3] =
txtAlamat.Text;
rows[0][4] =
txtEmail.Text;
rows[0][5] =
txtTelepon.Text;
rows[0].AcceptChanges();
ScriptManager.RegisterStartupScript(this, typeof(string), "onclik",
string.Format("alert('{0}');window.close();", "Data Berhasil
DiSimpan"), true);
}
}
}
private bool IsValidOnSave()
{
string error = "";
if (txtNim.Text == "")
{
error = "NIM Tidak Boleh Kosong";
}
else if (txtNama.Text == "")
{
error = "Nama Tidak Boleh Kosong";
}
else if (txtAlamat.Text == "")
{
error = "Nama Tidak Boleh Kosong";
}
else if (txtEmail.Text == "")
{
error = "Nama Tidak Boleh Kosong";
}
else
{
return true;
}
ScriptManager.RegisterStartupScript(this, typeof(string), "onclik",
string.Format("alert('{0}');", error), true);
return false;
}
Bila proses save
sudah di lakukan maka isi DispalayData kita rubah dipindah ke fungsi
createEmptyDataSource();maka menjadi seperti ini
private DataTable createEmptyDataSource()
{
DataTable dt = new DataTable("DataSource");
dt.Columns.Add("NIM", typeof(string));
dt.Columns.Add("Nama", typeof(string));
dt.Columns.Add("Jurusan", typeof(string));
dt.Columns.Add("Alamat", typeof(string));
dt.Columns.Add("Email", typeof(string));
dt.Columns.Add("Telepon", typeof(string));
DataRow dr = dt.NewRow();
dr[0] = "31122369";
dr[1] = "khoirul mustofa";
dr[2] = "teknik informatika";
dr[3] = "Rembang";
dr[4] = "khoirul.mustofa2014@gmail.com";
dr[5] = "081230400086";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr[0] = "31122370";
dr[1] = "donal bebek";
dr[2] = "teknik kimia";
dr[3] = "blora";
dr[4] = "donal.bebek@gmail.com";
dr[5] = "081230442423";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr[0] = "31122371";
dr[1] = "sinta jojo";
dr[2] = "teknik sipil";
dr[3] = "Rembang";
dr[4] = "sinta.jojo@gmai.com";
dr[5] = "081232657086";
dt.Rows.Add(dr);
return dt;
}
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
DisplayData();
}
}
private void DisplayData()
{
DataTable dt = DataSource;
Data DisplayDAta yang di
sini pindah ke createEmptyDataSource();
GridTampil.DataSource = dt;
GridTampil.DataBind();
}
Kita tambah kan fungsi pada gridview DispayData()
sbb:
protected void GridTampil_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Detail")
{
string script = string.Format("showModalDialog
('FormDetail.aspx?NIM={0}','','dialogwidth: 400, dialogheight:400');", e.CommandArgument.ToString());
ScriptManager.RegisterStartupScript(this, typeof(string), "onclik",
script, true);
DisplayData(); agar saat tampil data langsung load.
}
Kita
lakukan modif pada html Default
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div>
</div>
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="ShowDetail()" />
</ContentTemplate>
</asp:UpdatePanel>
</form>


Posting Komentar