masout
شنبه 12 مهر 1393, 14:27 عصر
سر کلاس Asp استاد یه پروژه داده که یه دفترچه تلفن درست کنیم که بشه رکورد اضافه یا حذف و ویرایش کرد امکان سرچ و .... هم داشته باشه
صفحه به این شکله :(البته هنوز رو دیزاینش کار نکردم و فعلا در گیر پشت صحنه هستم)
http://8pic.ir/images/2ki7w9zxppfbwlgsu36k.png
الان مشکل من اینکه وقتی سرچ میکنم و این اطلاعات تو دیتا ویو ذخیره میشه ،میخوام رو همون اطلاعات هم عمل مرتب سازی یا سورتینگ رو انجام بدم! اما وقتی سورت میکنم میره کل اطلاعات datatable رو مرتب میکنه ،میخواستم بببینم شما نظری یا ایده ای ندارید؟
اینم کدی که استفاده کردم : البته من مبتدی هستم دیگه..به همین چشم نگاه کنید به کد :4:
ممنون پیشاپیش
public partial class Index : System.Web.UI.Page {
DataTable dt;
DataView dv;
protected void Page_Load(object sender, EventArgs e)
{
if (Session["user"] == null)
{
Response.Redirect("Login.aspx");
}
else
{
if (!IsPostBack)
{
ddlrelation.Visible = false;
ddlgender.Visible = false;
ddlascdesc.Visible = false;
string username = Convert.ToString(Session["user"]);
SqlDataAdapter da = new SqlDataAdapter("select * from phones where username='" + username + "'", "server=.;database=login;trusted_connection=true;");
dt = new DataTable("dt");
da.Fill(dt);
ViewState["dt"] = dt;
}
else
{
dt = (DataTable)ViewState["dt"];
}
}
}
protected void btnFind_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
dv = new DataView();
dv.Table = dt;
if (ddlsearch.SelectedIndex == 0)
{
dv.RowFilter = "FirstName like '%" + txtsearch.Text + "%'";
}
else if (ddlsearch.SelectedIndex == 1)
{
dv.RowFilter = "Phone like '%" + txtsearch.Text + "%'";
}
else if (ddlsearch.SelectedIndex == 2)
{
dv.RowFilter = "Email like '%" + txtsearch.Text + "%'";
}
else if (ddlsearch.SelectedIndex == 6)
{
dv.RowFilter = "Lastname like '%" + txtsearch.Text + "%'";
}
GridView1.DataSource = dv;
GridView1.DataBind();
}
}
protected void ddlsearch_SelectedIndexChanged(object sender, EventArgs e)
{
if (ddlsearch.SelectedIndex == 3)
{
ddlrelation.Visible = true;
}
else
{
ddlrelation.Visible = false;
}
if (ddlsearch.SelectedIndex == 4)
{
ddlgender.Visible = true;
}
else
{
ddlgender.Visible = false;
}
if (ddlsearch.SelectedIndex == 5)
{string username = Convert.ToString(Session["user"]);
SqlConnection cn = new SqlConnection("server=.;database=login;trusted_connection=true;");
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "sp_newest3";
cmd.Parameters.AddWithValue("@username",username);
SqlDataAdapter da1 = new SqlDataAdapter(cmd);
DataTable dt1 = new DataTable("dt1");
da1.Fill(dt1);
GridView1.DataSource = dt1;
GridView1.DataBind();
}
}
public string SetImg(object gender)
{
if (Convert.ToBoolean(gender) == true)
{
return "male-sign.jpg";
}
else
{
return "female-sign.jpg";
}
}
protected void ddlrelation_SelectedIndexChanged(object sender, EventArgs e)
{
string relation = Convert.ToString(ddlrelation.SelectedItem.Value);
dv = new DataView();
dv.Table = dt;
dv.RowFilter = "Relation like '%" + relation + "%'";
GridView1.DataSource = dv;
GridView1.DataBind();
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
string Gender = Convert.ToString(ddlgender.SelectedItem.Value);
dv = new DataView();
dv.Table = dt;
if (Gender == "Male")
{
dv.RowFilter = "Gender=1";
}
else
{
dv.RowFilter = "Gender=0";
}
GridView1.DataSource = dv;
GridView1.DataBind();
}
protected void ddlsort_SelectedIndexChanged(object sender, EventArgs e)
{
DataView dv1 = new DataView();
dv1.Table = dt;
ddlascdesc.Visible = true;
if (ddlsort.SelectedIndex == 0 )
{
string sortname = Convert.ToString(ddlsort.SelectedItem.Value);
dv1.Sort = sortname;
}
else if (ddlsearch.SelectedIndex == 1)
{
string sortname = Convert.ToString(ddlsort.SelectedItem.Value);
dv1.Sort = sortname;
}
GridView1.DataSource = dv1;
GridView1.DataBind();
}
صفحه به این شکله :(البته هنوز رو دیزاینش کار نکردم و فعلا در گیر پشت صحنه هستم)
http://8pic.ir/images/2ki7w9zxppfbwlgsu36k.png
الان مشکل من اینکه وقتی سرچ میکنم و این اطلاعات تو دیتا ویو ذخیره میشه ،میخوام رو همون اطلاعات هم عمل مرتب سازی یا سورتینگ رو انجام بدم! اما وقتی سورت میکنم میره کل اطلاعات datatable رو مرتب میکنه ،میخواستم بببینم شما نظری یا ایده ای ندارید؟
اینم کدی که استفاده کردم : البته من مبتدی هستم دیگه..به همین چشم نگاه کنید به کد :4:
ممنون پیشاپیش
public partial class Index : System.Web.UI.Page {
DataTable dt;
DataView dv;
protected void Page_Load(object sender, EventArgs e)
{
if (Session["user"] == null)
{
Response.Redirect("Login.aspx");
}
else
{
if (!IsPostBack)
{
ddlrelation.Visible = false;
ddlgender.Visible = false;
ddlascdesc.Visible = false;
string username = Convert.ToString(Session["user"]);
SqlDataAdapter da = new SqlDataAdapter("select * from phones where username='" + username + "'", "server=.;database=login;trusted_connection=true;");
dt = new DataTable("dt");
da.Fill(dt);
ViewState["dt"] = dt;
}
else
{
dt = (DataTable)ViewState["dt"];
}
}
}
protected void btnFind_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
dv = new DataView();
dv.Table = dt;
if (ddlsearch.SelectedIndex == 0)
{
dv.RowFilter = "FirstName like '%" + txtsearch.Text + "%'";
}
else if (ddlsearch.SelectedIndex == 1)
{
dv.RowFilter = "Phone like '%" + txtsearch.Text + "%'";
}
else if (ddlsearch.SelectedIndex == 2)
{
dv.RowFilter = "Email like '%" + txtsearch.Text + "%'";
}
else if (ddlsearch.SelectedIndex == 6)
{
dv.RowFilter = "Lastname like '%" + txtsearch.Text + "%'";
}
GridView1.DataSource = dv;
GridView1.DataBind();
}
}
protected void ddlsearch_SelectedIndexChanged(object sender, EventArgs e)
{
if (ddlsearch.SelectedIndex == 3)
{
ddlrelation.Visible = true;
}
else
{
ddlrelation.Visible = false;
}
if (ddlsearch.SelectedIndex == 4)
{
ddlgender.Visible = true;
}
else
{
ddlgender.Visible = false;
}
if (ddlsearch.SelectedIndex == 5)
{string username = Convert.ToString(Session["user"]);
SqlConnection cn = new SqlConnection("server=.;database=login;trusted_connection=true;");
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "sp_newest3";
cmd.Parameters.AddWithValue("@username",username);
SqlDataAdapter da1 = new SqlDataAdapter(cmd);
DataTable dt1 = new DataTable("dt1");
da1.Fill(dt1);
GridView1.DataSource = dt1;
GridView1.DataBind();
}
}
public string SetImg(object gender)
{
if (Convert.ToBoolean(gender) == true)
{
return "male-sign.jpg";
}
else
{
return "female-sign.jpg";
}
}
protected void ddlrelation_SelectedIndexChanged(object sender, EventArgs e)
{
string relation = Convert.ToString(ddlrelation.SelectedItem.Value);
dv = new DataView();
dv.Table = dt;
dv.RowFilter = "Relation like '%" + relation + "%'";
GridView1.DataSource = dv;
GridView1.DataBind();
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
string Gender = Convert.ToString(ddlgender.SelectedItem.Value);
dv = new DataView();
dv.Table = dt;
if (Gender == "Male")
{
dv.RowFilter = "Gender=1";
}
else
{
dv.RowFilter = "Gender=0";
}
GridView1.DataSource = dv;
GridView1.DataBind();
}
protected void ddlsort_SelectedIndexChanged(object sender, EventArgs e)
{
DataView dv1 = new DataView();
dv1.Table = dt;
ddlascdesc.Visible = true;
if (ddlsort.SelectedIndex == 0 )
{
string sortname = Convert.ToString(ddlsort.SelectedItem.Value);
dv1.Sort = sortname;
}
else if (ddlsearch.SelectedIndex == 1)
{
string sortname = Convert.ToString(ddlsort.SelectedItem.Value);
dv1.Sort = sortname;
}
GridView1.DataSource = dv1;
GridView1.DataBind();
}