Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Προβλημα με dropdownlist menu

Îåêßíçóå áðü ôï ìÝëïò nikosmantis. Τελευταία δημοσίευση από το μέλος tasos στις 11-08-2009, 18:24. Υπάρχουν 3 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  11-08-2009, 15:21 53039

    Προβλημα με dropdownlist menu

    Καλησπερα,προσπαθω να προσθεσω μερικα στοιχεια αναζητησης σε μια σελιδα μου,αλλα το dropdownlist menu δεν λειτουργει σωστα

    παραθετω το κωδικα

    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    
    public partial class OrderSearch : LocalizedPage
    {
        public DAL dal = new DAL();
    
    
        protected void Page_Load(object sender, EventArgs e)
        {
            
    
            AutoLocalizeControls(langpanel);
            if (!IsPostBack)
            {
                RenderAgentCombo();
                RenderOrderTypeCombo();
            }
           
    
            
        }
      
    
        private void RenderAgentCombo()
        {
            string currentuser = "";
            currentuser = Session["username"].ToString();
            try
            {
                DropDownListAgents.DataSource = dal.GetListAgents(currentuser).Tables[0].DefaultView;
                DropDownListAgents.DataTextField = "agentname";
                DropDownListAgents.DataValueField = "AgentCodeID";
                DropDownListAgents.DataBind();
            }
            catch { }
        }
    
       
    
        private void RenderOrderTypeCombo()
        {
            try
            {
                DropDownListOrderTypes.DataSource = dal.GetListOrderTypes().Tables[0].DefaultView;
                DropDownListOrderTypes.DataTextField = "OrderTypeName";
                DropDownListOrderTypes.DataValueField = "OrderCodeID";
                DropDownListOrderTypes.DataBind();
            }
            catch { }
        }
    
        public void BindGrid()
        {
            
            try
          
            {
                DataSet ds = new DataSet();
                string msgstatus = "";
                string one = DropDownListAgents.SelectedValue.ToString();
                string two = DropDownListOrderTypes.SelectedValue.ToString();
                if (rbALL.Checked) { msgstatus = ""; }
                if (rb2000.Checked) { msgstatus = "2000"; }
                if (rbWAIT.Checked) { msgstatus = "WAIT"; }
                if (rbSENTOK.Checked) { msgstatus = "SENTOK"; }
                if (rb2101.Checked) { msgstatus = "2101"; }
                if (rb2122.Checked) { msgstatus = "2122"; }
                if (rb2123.Checked) { msgstatus = "2123"; }
                if (rb2141.Checked) { msgstatus = "2141"; }
                if (rb2203.Checked) { msgstatus = "2203"; }
                if (rb2262.Checked) { msgstatus = "2262"; }
                if (rb2282.Checked) { msgstatus = "2282"; }
                if (rb2331.Checked) { msgstatus = "2331"; }
                if (rb2332.Checked) { msgstatus = "2332"; }
    
                bool requiredFieldsFlag = false;
                if (cbHasWaypoints.Checked)
                {
                    if (tbClientID.Text == "")
                    {
                        requiredFieldsFlag = true;
                    }
                }
    
                if (requiredFieldsFlag)
                {
                    tbClientID.BackColor = System.Drawing.Color.Yellow;
                    return;
                }
    
                tbOrderID.BackColor = System.Drawing.Color.White;
                tbClientID.BackColor = System.Drawing.Color.White;
              
    
                //string one = DropDownListAgents.SelectedValue.ToString();
                //string two = DropDownListOrderTypes.SelectedValue.ToString();
                //string one = DropDownListAgents.SelectedValue.ToString();
                //string two = DropDownListOrderTypes.SelectedValue.ToString();
                //ds = dal.GetOrders(msgstatus, tbMsgDateFrom.Text, tbMsgDateTo.Text, tbMsgText.Text, DropDownListAgents.Text, DropDownListOrderTypes.Text, tbOrderID.Text, tbClientID.Text, cbAllAgents.Checked, cbAllOrderTypes.Checked, cbHasCash.Checked, cbHasWaypoints.Checked);
                
                ds = dal.GetOrders(msgstatus, tbMsgDateFrom.Text, tbMsgDateTo.Text, tbMsgText.Text, one, two, tbOrderID.Text, tbClientID.Text, cbAllAgents.Checked, cbAllOrderTypes.Checked, cbHasCash.Checked, cbHasWaypoints.Checked);
                GridView1.DataSource = ds.Tables[0].DefaultView;
                GridView1.DataBind();
            }
    
            
            catch { }
        }
    
       
    
        protected void btGetOrders_Click(object sender, EventArgs e)
        {
    
            {
    
                RenderAgentCombo();
                RenderOrderTypeCombo();
                GridView1.PageIndex = 0;
                BindGrid();
                
    
            }
        }
    
     
        protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            GridView1.PageIndex = e.NewPageIndex;
            BindGrid();
        }
        protected void GridView1_DataBinding(object sender, EventArgs e)
        {
            GridView1.Columns[0].HeaderText = Localization.ResourceManager.GetString("OrdersGridColumnHeaderOrderID");
            GridView1.Columns[1].HeaderText = Localization.ResourceManager.GetString("OrdersGridColumnHeaderClientID");
            GridView1.Columns[2].HeaderText = Localization.ResourceManager.GetString("OrdersGridColumnHeaderMsgText");
            GridView1.Columns[3].HeaderText = Localization.ResourceManager.GetString("OrdersGridColumnHeaderQuantity");
            GridView1.Columns[4].HeaderText = Localization.ResourceManager.GetString("OrdersGridColumnHeaderCash");
            GridView1.Columns[5].HeaderText = Localization.ResourceManager.GetString("OrdersGridColumnHeaderMsgDate");
            GridView1.ColumnsDevil.HeaderText = Localization.ResourceManager.GetString("OrdersGridColumnHeaderMsgStatus");
    
        }
        public string DecodeOrderStatus(string code)
        {
            return Localization.ResourceManager.GetString("OrderStatus_" + code);
        }
        
    
       
    }


    το προβλημα ειναι οτι το dropdownlist τρεχει κατα το page load...μολις πιεσω την Αναζητηση δηλαδη εκτελεστει η
    btGetOrders_Click τοτε η αναζητηση γινεται μονο με την πρωτη επιλογη απο το μενου και οχι απο τις υπολοιπες...



  •  11-08-2009, 17:52 53041 σε απάντηση της 53039

    Απ: Προβλημα με dropdownlist menu

    Στην κλήση της btGetOrders_Click καλείς τις RenderAgentCombo(); και RenderOrderTypeCombo();. Αυτές οι κλήσεις είναι περιττές, ξαναδημιουργούν τα drop down lists και έτσι "χάνεται" η τιμή του SelectedIndex. Δοκίμασε να τρέξεις τον κώδικα σου χωρίς αυτές τις δύο συναρτήσεις στην btGetOrders_Click(). Λογικά θα είσαι οκ.



    Τάσος Καραγιάννης

    Baby debugging steps...
  •  11-08-2009, 18:01 53042 σε απάντηση της 53041

    Απ: Προβλημα με dropdownlist menu

    σε ευχαριστω για την απαντηση σου αλλα κανοντας αυτο που ειπες

    1)στη διαδικασια click τα dropdownlist επιστρεφουν κενα
    2)Τα string one kai two που περιεχουν στα SelectedValue παίρνει κενή τιμή


  •  11-08-2009, 18:24 53044 σε απάντηση της 53042

    Απ: Προβλημα με dropdownlist menu

    Μάλλον υπάρχει κάτι στον κώδικα σου που "ξαναδημιουργεί" τα ddls, μάλλον κάνουν bind με άδειο dataset και έτσι εμφανίζονται άδεια στο postback. 

    Μήπως στο markup έχεις ορίσει κάποιο datasource στα ddls?
    Μήπως φορτώνεις δυναμικά τα ddls ή κάποιο web user control;


    Τάσος Καραγιάννης

    Baby debugging steps...
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems