Ашылмалы тізімнің динамикалық жаңартылуы

Менде осы тамшы тізім бар және бәрі де бар. Жалғыз мәселе - менің веб-сайтым арқылы дерекқорда жаңа элемент қосқанда, ашылмалы тізім қандай да бір себептермен жаңартылмайды.

private CurrentUser _cu = new CurrentUser();//just to check if use is an admin or not.

    protected void Page_Load(object sender, EventArgs e)
    {           
        _cu = (CurrentUser)Session[Common.SessVariables.CurUser];
        if (!_cu.CanReport) { Response.Redirect("~/default.aspx"); }

        CurrentUser cu = (CurrentUser)Session[Common.SessVariables.CurUser];
        if (!IsPostBack)
        {
            foreach (PrefixAdd loc in cu.Prefix)//Prefix is a Property
            {
                ListItem x = new ListItem(loc.Prefix);
                PrefixID.Items.Add(x);
            }
        }

    }

@Wayne Мен алдын ала префиксті Pre, yes, sey, т.б. сияқты кірістіру үшін дүкен процедурасын пайдаланамын. Содан кейін тізім префиксімен толтырылады.

StringBuilder sbSQL = new StringBuilder(255);
sbSQL.Append(string.Format("exec insPrefix @Prefix=N'{0}';", PrefixBox.Text.Trim()));
string msg = string.Empty;
msg = (_oDAW.ExecuteNonQuery(sbSQL.ToString())) ? string.Format(Common.GetAppSetting(Common.ConfigKeys.User_Submit_Success), 
PrefixBox.Text.Trim()) : Common.GetAppSetting(Common.ConfigKeys.SubmitFail); //this is a somewhat custom method for CS and databinding.

@ Юрий Рожовецкий Мен осы бетке жаңа элементтерді түсіріп тізіммен қосамын.

0
Осы бетте жаңа элемент қосасыз ба? Егер жоқ болса, сіз жаңа элементті қосқаннан кейін сеанстағы пайдаланушыны жаңартасыз ба?
қосылды автор Yuriy Rozhovetskiy, көзі
Сондай-ақ, дерекқорды қалай жаңартуды бізге айтып беруіңіз керек. бұл кері байланыс оқиғасы болып табылады ма? егер солай болса, сіз сол оқиғаларды өңдемей отырғандықтан, ашылмалы тізім жаңартылмайды.
қосылды автор Wayne In Yak, көзі

2 жауаптар

Дерекқорға элементті қосқан кезде, ашылмалы тізімді қайта қалпына келтіру керек.

yourDropDown.DataSource = //...
yourDropDown.DataBind();

Яғни, DropDownLists (және басқа басқару элементтері) олардың деректерінің сахнадан кейін өзгергенін білмейді, олар автоматты түрде оны анықтай алмайды. Басқару элементтеріне өздерінің деректерін қолмен қалпына келтіру туралы айту керек.

Page_Load (...) {if! (IsPostback) бөлімінде жақсы жұмыс.

3
қосылды

Кейбір кері байланыс элементімен осы бетте жаңа префикс қосқаннан кейін, осы жаңа элементті PrefixID ашылмалы тізімнің элементтері жинағына қосып, дерекқорға жаңа префикс қосқаннан кейін бірден Сеанстағы CurrentUser данасын жаңартыңыз.

1
қосылды