-2
header_text가있는 SQL에서 데이터를 가져옵니다. Last_Term 및 Current_Term 선택한 드롭 다운 값으로 변경하려면 해당 header_text가 필요합니다.헤더 텍스트가 변경되지 않습니다. C#
<asp:DropDownList ID="ENRDropDownList" AutoPostBack="True" OnSelectedIndexChanged="ENRDropDownList_OnSelectedIndexChanged"
runat="Server">
<asp:ListItem Text="Fall 2016" Value="20172" />
<asp:ListItem Text="Fall 2015" Value="20162" />
<asp:ListItem Text="Fall 2014" Value="20152" />
<asp:ListItem Text="Fall 2013" Value="20142" />
<asp:ListItem Text="Fall 2012" Value="20132" />
<asp:ListItem Text="Fall 2011" Value="20122" />
<asp:ListItem Text="Fall 2010" Value="20112" />
<asp:ListItem Text="Fall 2009" Value="20102" />
</asp:DropDownList>
우리가 2016 가을 선택하면, Current_Term 2016 년 가을로 변경해야하며, Last_Term 2015 (동적) 가을로 변경해야 가정하자.
지금까지 나는이 논리를 작성하여 현재와 마지막 용어가 적절히 변경되도록했습니다.
protected void Page_Load(object sender, EventArgs e)
{
//List<something> clist = new List<something>();s
//clist.Add(new something { cyear = 2016 , pyear = 2015});
if (!Page.IsPostBack)
{
if (Session["term"] != null)
{
ENRDropDownList.SelectedValue = Session["term"].ToString();
}
caption.Text = "Comparison of Fall Enrollment Numbers - " + ENRDropDownList.SelectedItem;
//MyGridView1.Columns[1].HeaderText = clist.Find(new something { cyear = 2015 });
MyGridView1.Columns[2].HeaderText = ENRDropDownList.SelectedItem.Text;
MyGridView2.Columns[2].HeaderText = ENRDropDownList.SelectedItem.Text;
MyGridView3.Columns[2].HeaderText = ENRDropDownList.SelectedItem.Text;
MyGridView4.Columns[2].HeaderText = ENRDropDownList.SelectedItem.Text;
MyGridView5.Columns[2].HeaderText = ENRDropDownList.SelectedItem.Text;
MyGridView6.Columns[2].HeaderText = ENRDropDownList.SelectedItem.Text;
MyGridView7.Columns[2].HeaderText = ENRDropDownList.SelectedItem.Text;
MyGridView8.Columns[2].HeaderText = ENRDropDownList.SelectedItem.Text;
MyGridView9.Columns[2].HeaderText = ENRDropDownList.SelectedItem.Text;
MyGridView10.Columns[2].HeaderText = ENRDropDownList.SelectedItem.Text;
MyGridView11.Columns[2].HeaderText = ENRDropDownList.SelectedItem.Text;
}
}
//string drop = Nameofthedropdownlist.Value;
// datatable.Coloumn["Current_Term"].ColoumnName= drop;
protected void ENRDropDownList_OnSelectedIndexChanged(Object sender, EventArgs e)
{
caption.Text = "Comparison of Fall Enrollment Numbers - " + ENRDropDownList.SelectedItem;
Session["term"] = ENRDropDownList.SelectedValue;
MyGridView1.DataBind();
MyGridView2.DataBind();
MyGridView3.DataBind();
MyGridView4.DataBind();
MyGridView5.DataBind();
MyGridView6.DataBind();
MyGridView7.DataBind();
MyGridView8.DataBind();
MyGridView9.DataBind();
MyGridView10.DataBind();
MyGridView11.DataBind();
string dropValue = ENRDropDownList.SelectedItem.Text;
string drop = ENRDropDownList.SelectedItem.Value.Remove(4,1);
int previousvalue = Convert.ToInt32(drop) - 2;
MyGridView1.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
MyGridView2.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
MyGridView3.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
MyGridView4.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
MyGridView5.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
MyGridView6.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
MyGridView7.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
MyGridView8.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
MyGridView9.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
MyGridView10.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
MyGridView11.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
//MyGridView1.Columns[1].HeaderText = dropValue;
// MyGridView1.Columns[1].HeaderText = "Fall " + Convert.ToString(previousvalue);
MyGridView1.Columns[2].HeaderText = dropValue;
MyGridView2.Columns[2].HeaderText = dropValue;
MyGridView3.Columns[2].HeaderText = dropValue;
MyGridView4.Columns[2].HeaderText = dropValue;
MyGridView5.Columns[2].HeaderText = dropValue;
MyGridView6.Columns[2].HeaderText = dropValue;
MyGridView7.Columns[2].HeaderText = dropValue;
MyGridView8.Columns[2].HeaderText = dropValue;
MyGridView9.Columns[2].HeaderText = dropValue;
MyGridView10.Columns[2].HeaderText = dropValue;
MyGridView11.Columns[2].HeaderText = dropValue;
//string last_Year_Value = ENRDropDownList.SelectedValue
//Console.WriteLine(dropValue);
}
페이지를로드 할 때 Current_Term 만 선택한 연도로 변경되었지만 last_Term은 변경되지 않은 위치에서로드됩니다.
하지만, 내가 다른 연도를 선택하면, 다음 Last_Term이 변화하고있다. 페이지를로드 할 때 last_term이 나타나도록이 문제를 어떻게 해결합니까?
페이지로드에서 ddl 변경 이벤트를 호출하거나 (내가 제안하지 않겠습니다) 모든 것을 채우는 두 위치에서 호출하는 함수를 작성해야합니다. 따라서 두 개의 섹션에서 수행되는 모든 그리드 속성을 가지는 대신 하나의 작업으로 수행하십시오. – MaCron