【问题标题】:Ajax tabContainer using GridView inside panel, one button outside of the tabContainerAjax tabContainer 使用 GridView 内部面板,tabContainer 外部一个按钮
【发布时间】:2014-07-29 20:38:01
【问题描述】:

我正在使用具有 5 个 tapPanel 的 Ajax 选项卡容器创建管理面板,其中每个 tapPanel 都有一个来自标准工具的面板。在每个面板中,我都有 GridView 来显示添加的数据。最后,我在 Ajax tabContainer 之外有一个 Add 按钮。如果允许,我会发布设计。问题是,我不知道 tabContainer 的编码。我创建了 10 个方法,以便在单击“添加”按钮时调用它。

这是我的代码,它不起作用。

namespace Admin_Panel
{
    public partial class add : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Session["Page"] = "ADD";           
        }

        protected void btnAddCat_Click(object sender, EventArgs e)
        {
            AjaxControlToolkit.TabContainer container = (AjaxControlToolkit.TabContainer)TabConAddInfo;
            AjaxControlToolkit.TabPanel tcTabPanel = new AjaxControlToolkit.TabPanel();

            if (tcTabPanel.HeaderText == "Splash")
            {
                addSplash();
                lblMsgAdd.Text = "Added successfully";
            }
            else if (tcTabPanel.HeaderText == "Main Category")
            {
                addMainCat();
                lblMsgAdd.Text = "Added successfully";
            }
            else if (tcTabPanel.HeaderText == "Sub Category")
            {
                addSubCat();
                lblMsgAdd.Text = "Added successfully";
            }
            else if (tcTabPanel.HeaderText == "Business Contact")
            {
                addBusinessContact();
                lblMsgAdd.Text = "Added successfully";
            }
            else if (tcTabPanel.HeaderText == "Person Contact")
            {
                addPersonContact();
                lblMsgAdd.Text = "Added successfully";
            }            
        }

       Int32 fileLength = 0;
       string connStr = WebConfigurationManager.ConnectionStrings["connection"].ConnectionString;

        private void addSplash()
        {
            HttpPostedFile uploadFile = FileLogo.PostedFile;
            fileLength = uploadFile.ContentLength;

            if (fileLength == 0)
            {
                string filePath = Server.MapPath(@"\style\img\no-photo-icon.jpg");
                string fileName = Path.GetFileName(filePath);

                FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read);
                fileLength = (Int32)fs.Length;
                Byte[] fileByteArr = new Byte[fileLength];
                fs.Read(fileByteArr, 0, fileLength);

                SqlConnection conn = new SqlConnection(connStr);
                SqlCommand cmd = new SqlCommand("insert into SPLASH (VersionNumber, SplashLabel,LoginID) values (@VersionNumber,@SplashLabel,@LoginID)", conn);

                cmd.Parameters.AddWithValue("@VersionNumber", txtVnum.Value);
                cmd.Parameters.AddWithValue("@SplashLabel", txtSpLabel.Value);
                cmd.Parameters.AddWithValue("@LoginID", txtYourID.Value);
                cmd.Parameters.AddWithValue("@ImageData", fileByteArr);
                cmd.Parameters.AddWithValue("@ImageContentType", "image/jpg");
                cmd.Parameters.AddWithValue("@ImageSize", fileLength);

                conn.Open();
                cmd.ExecuteNonQuery();
                conn.Close();
                conn.Dispose();
                cmd.Dispose();

            }
            else
            {
                Byte[] fileByteArray = new Byte[fileLength];
                Stream streamObject = uploadFile.InputStream;
                streamObject.Read(fileByteArray, 0, fileLength);

                SqlConnection conn = new SqlConnection(connStr);
                SqlCommand cmd = new SqlCommand("insert into SPLASH (VersionNumber, SplashLabel,LoginID) values (@VersionNumber,@SplashLabel,@LoginID)", conn);

                cmd.Parameters.AddWithValue("@VersionNumber", txtVnum.Value);
                cmd.Parameters.AddWithValue("@SplashLabel", txtSpLabel.Value);
                cmd.Parameters.AddWithValue("@LoginID", txtYourID.Value);
                cmd.Parameters.AddWithValue("@ImageData", fileByteArray);
                cmd.Parameters.AddWithValue("@ImageContentType", "image/jpg");
                cmd.Parameters.AddWithValue("@ImageSize", fileLength);


                conn.Open();
                cmd.ExecuteNonQuery();
                conn.Close();
                conn.Dispose();
                cmd.Dispose();
            }
        }

        private void showSplash()
        {
            SqlConnection conn = new SqlConnection(connStr);
            SqlCommand cmd = new SqlCommand("select * from SPLASH", conn);

            conn.Open();
            SqlDataReader rdr = cmd.ExecuteReader();
            System.Data.DataTable dt = new System.Data.DataTable();
            dt.Load(rdr);
            GridViewAddSplash.DataSource = dt;
            GridViewAddSplash.DataBind();
            conn.Close();
            conn.Dispose();
            cmd.Dispose();
        }

        private void addMainCat()
        {
        }        
        private void showMainCat()
        {           
        }
        private void addSubCat()
        {            
        }
        private void showSubCat()
        {          
        } 
        private void addBusinessContact()       
        {                                  
        } 
        private void showBusinessContact()
        {

        }

        private void addPersonContact()
        {                    
        } 
        private void showPersonContact()
        {           
        }        
    }
}

【问题讨论】:

    标签: c# asp.net ajax


    【解决方案1】:

    请使用以下代码:

            AjaxControlToolkit.TabContainer container = (AjaxControlToolkit.TabContainer)TabConAddInfo;
            int index = container.ActiveTabIndex;
    
            if (index == 0)
            {
                addSplash();
                lblMsgAdd.Text = "Added successfully";
            }
            else if (index == 1)
            {
                addMainCat();
                lblMsgAdd.Text = "Added successfully";
            }
            else if (index == 2)
            {
                addSubCat();
                lblMsgAdd.Text = "Added successfully";
            }
            else if (index == 3)
            {
                addBusinessContact();
                lblMsgAdd.Text = "Added successfully";
            }
            else if (index == 4)
            {
                addPersonContact();
                lblMsgAdd.Text = "Added successfully";
            }     
    

    【讨论】:

    • 问题解决了!这只是我假设的属性设置!您也可以在我的第一张照片中看到它,并带有红色评论。我已经删除了 OnClientActiveTabChanged 并且它有效! :) 我实际上不知道它做了什么,但无论如何。我尝试过的所有编码都可以正常工作!谢谢薇~
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-13
    • 1970-01-01
    • 2011-02-21
    • 1970-01-01
    • 2014-01-24
    • 2012-10-20
    • 1970-01-01
    相关资源
    最近更新 更多