Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > .NET Framework > Forum > มีปัญหากับ controls.add และ combobox ครับ ......!?



 

มีปัญหากับ controls.add และ combobox ครับ ......!?

 



Topic : 057360



โพสกระทู้ ( 362 )
บทความ ( 0 )



สถานะออฟไลน์




ผมจะกด Button แล้วสร้าง label ขึ้นมาทีละอันผมต้องทำยังไงครับผมทำแล้วไม่ได้ครับ
Code (C#)
        Label lblNum = new Label();
        int cNum;
        cNum = cNum+1;
        lblNum.ID = "lblNum"+cNum;
        lblNum.Text = cNum.ToString();
        this.Panel1.Controls.Add(lblNum);

อีกส่วนจะ controls.add เป็น combobox ที่ใช้จาก toolkit อะครับ
ผมทำแล้วมันแยกออกมาเป็น textbox กับ dropdownlist มันไม่เป็น combobox ครับ



Tag : .NET, Web (ASP.NET), C#









ประวัติการแก้ไข
2011-03-16 23:56:41
2011-03-17 00:09:06
2011-03-17 00:12:57
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-03-16 18:28:50 By : hamzter View : 1313 Reply : 9
 

 

No. 1



โพสกระทู้ ( 362 )
บทความ ( 0 )



สถานะออฟไลน์


ช่วยหน่อยครับแก้ไขข้อความแล้วน่าจะเข้าใจขึ้นหน่อย






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-17 00:09:52 By : hamzter
 


 

No. 2



โพสกระทู้ ( 100 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Facebook

Quote:
ผมจะกด Button แล้วสร้าง label ขึ้นมาทีละอันผมต้องทำยังไงครับผมทำแล้วไม่ได้ครับ


สงสัยแบบนี้มั๊ง
Code (C#)
public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Button1.Click += new EventHandler(Button1_Click);
    }

    private static int _cNum;

    void Button1_Click(object sender, EventArgs e)
    {
        for (int i = 0; i <= _cNum; i++)
        {
            Label lblNum = new Label();
            lblNum.ID = "lblNum" + i.ToString();
            lblNum.Text = i.ToString() + "<BR>";
            this.Panel1.Controls.Add(lblNum);
        }
        _cNum++;
    }
}


Quote:
อีกส่วนจะ controls.add เป็น combobox ที่ใช้จาก toolkit อะครับ
ผมทำแล้วมันแยกออกมาเป็น textbox กับ dropdownlist มันไม่เป็น combobox ครับ


อันนี้งงมี codeกะรูปให้ดูมั๊ยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-17 13:59:20 By : Programmer Of Persia
 

 

No. 3



โพสกระทู้ ( 362 )
บทความ ( 0 )



สถานะออฟไลน์


ปัญหาตรงสร้าง combobox หลายๆอันครับแล้วอันต่อไปมันไม่เป็น combobox
combobox
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-18 16:40:50 By : hamzter
 


 

No. 4



โพสกระทู้ ( 1,603 )
บทความ ( 1 )



สถานะออฟไลน์


ทายว่าที่เห็นทั้งหมดนั่นเป็นการตีตารางด้วย tag html แล้ว add control เข้าไป
ถ้าใช่ แนะนำให้คุณกลับไปใช้ gridview เพื่อจะทำงานที่คุณต้องการทั้งหมดให้มันง่ายขึ้น
ลืมไปหรือเปล่าคะว่า asp.net เป็น server-side programming ถ้าใช้ concept แบบ winform
หรือ php มันเหมือนจะเริ่มต้นได้ง่ายแต่เวลา bend code (ปรับให้เป็นอย่างที่ต้องการ) แบบนี้กับ ASP.NET
มันจะยาก และการที่ใช้ combobox กับทุก row ลองคูณจำนวน item ของรายการกับ row
จะเห็นว่าคุณใช้ทรัพยากรเยอะมาก ซึ่งถ้าเป็น web app เป็นการสิ้นเปลืองแบบร้ายแรง
นอกจากจะทำให้ load ช้า postback ช้า และถ้านำไปใช้งานจริงคงใช้ไม่ได้ web อาจจะล่ม
ทั้งๆที่เขียน code ถูกหมด

แนะนำว่าให้ใช้ template ของ gridview ใน mode edit ก้อให้ใช้ combobox แต่เวลา display
ก้อใช้ label ไปแทน เสร็จจากนี้แล้วก้อทายอีกว่าคุณจะถามว่าผมจะคำนวนราคารวม / ส่วนลด
ของแต่ละรายการและรวมทั้งหมดยังไง อันนั้นใช้ javascript มาช่วยค่ะ

ที่ทายๆมาถูกมั่งปะคะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-18 17:23:58 By : blurEyes
 


 

No. 5

Guest


กราบกระต่ายตาขวาง 3 ที แล้วเดินจากไปแบบเงียบๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-18 19:04:04 By : พี่หมี
 


 

No. 6



โพสกระทู้ ( 362 )
บทความ ( 0 )



สถานะออฟไลน์


ส่วนของการโหลดช้าผมว่าไม่น่าจะเป็นปัญหาเท่าไหร่ครับ เพราะคิดว่าใช้ไม่กี่เครื่องแล้วก็เป็นเครือข่ายแบบภายใน
หน้านี้เป็นส่วนaddข้อมูลครับรูปที่เห็นเป็นตารางส่วนล่างครับ ถ้าจะกรอกข้อมูลส่วนล่างได้ต้องมีข้อมูลส่วนบนก่อน
อีกส่วนผมต้องการแยกคอลัมน์ ผมไม่รู้ว่าgridview จะแยกคอลัมได้ไหมหรือขยายตารางได้หรือเปล่า
อีกส่วนคือเลือก"รายการ"จะแสดง"หน่วย"ใส่"จำนวน"ใส่"ราคา"จะแสดง"จำนวนเงิน"
ผมเลยคิดว่าถ้าgridviewน่าจะยุ่งยากกว่า ถ้าผมแยกส่วนเองจะง่ายกว่าและน่าจะสะดวกตอนคำนวณ"จำนวนเงิน"ครับ
ผมเลยแยกส่วนทำเองแล้วมันติดตรงที่ combobox มันสร้างมาใช้ได้แค่อันเดียวหรือผมใช้ไม่ถูกวิธีก็ไม่รู้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-18 19:57:55 By : hamzter
 


 

No. 7

Guest


จะลองดูตามที่คุณคิดเอาไว้ก็ได้นี่คะ แต่เท่าที่เคยทดลองมาด้วยวิธีที่คล้ายๆกับคุณมาก่อน
มันไม่ค่อยจะเวิร์ก ถ้าคุณจะมาทำคำนวน จำนวนเงินด้วย code server-side
มันออกจะทำให้ระบบ postback ยกเว้นว่าคุณจะทำด้วย ajax
เพราะนี่ไม่ใช่ win app ทุกครั้งที่กดปุ่มอะรัยของ server side มันจะ postback ทั้งหมด
และหากคุณใช้ combobox ทุกแถวมันก้อจะโหลดพร้อมกันหมดอีกครั้ง
ลองดูค่ะ มันอาจจะดีกว่าก้อเป็นได้
แต่ทั้งนี้ก้อแนะนำว่าใช้ gridview จะง่ายและเร็วกว่่าค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-18 23:13:34 By : สาวเอ๋อ เอ๋อเหรอ เอ๋อมากมาย
 


 

No. 8



โพสกระทู้ ( 362 )
บทความ ( 0 )



สถานะออฟไลน์


มันติดอยู่ที่ combobox มันสร้างหลายๆอันไม่ได้เนี่ยครับจะลองแบบไหนก็ไม่ได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-18 23:19:41 By : hamzter
 


 

No. 9



โพสกระทู้ ( 100 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Facebook

เห็นด้วยกับคุณ stupidgirl ใช้ gridview เร็วกว่าเห็นๆ แก้ก็ง่าย แต่เดาว่าคุณคงไม่ชอบเขียนแบบ code behide งั้นลองเขียนแบบโค้ดโบราณดูมั๊ยครับ

Code (JavaScript)
<%@ Page Language="C#" %>
<html>
<head >
    <title>Hello ThaiCreate</title>
    <script language="javascript">
        //========[ Java Script Zone ]========//
        var _rowId = 0;
        function deleteRow(pRow)
        {
            if ( !pRow ) return;
            if ( !confirm("จาลบจิงหรอ ??") ) return alert("มะแน่จัยหย่ากดเล่นจิ !!");
            document.getElementById("tblDisplay").deleteRow(pRow.rowIndex);
        }
        function addRow()
        {
            var table = document.getElementById("tblDisplay");
            var row = table.insertRow(table.rows.length);
            var cell = row.insertCell(0);
            var sel = document.createElement("select");
            sel.name = "cboDisplay" + _rowId++;
            var strText = new Array();
            strText[0] = sel.name;
            strText[1] = "AAAA";
            strText[2] = "BBBB";
            strText[3] = "CCCC";
            strText[4] = "DDDD";
            for(i=0;i<strText.length;sel.options.add(new Option(strText[i++])));
            cell.appendChild(sel);
            var cell2 = row.insertCell(1);
            var btnDelete = document.createElement("input");
            btnDelete.setAttribute("type","button");
            btnDelete.setAttribute("value","ลบ");
            btnDelete.onclick = function(){ deleteRow(row);}
            cell2.appendChild(btnDelete);
        }
    </script>
</head>
<body>
    <form method="post">
        <table id="tblDisplay" border="1" cellpadding="5">
        <%
            //=========[ C# Zone ]=========//
            if( Request.Form.Count > 0 )
            {
                Response.Write( "<tr><th>ชื่อตัวแปร</th><th>ค่าที่ส่งมา</th></tr>" );
                for( int i=0 ; i < Request.Form.Count ; i++ )
                {
                    Response.Write( "<tr><td>" );
                    Response.Write( Request.Form.GetKey( i ) );
                    Response.Write( "</td><td>" );
                    Response.Write( Request.Form[ i ] );
                    Response.Write( "</td></tr>" );
                }
            }
        %>  
            <tr>
                <td><input type="button" value="เพิ่มแถว" onclick="addRow()" /></td>
                <td><input type="submit" value="ส่งข้อมูล" /></td>
            </tr>
        </table>
    </form>
</body>
</html>


ลองเอาไปประยุกต์เล่นดูนะครับ


ประวัติการแก้ไข
2011-03-21 18:40:25
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-21 18:33:00 By : Programmer Of Persia
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : มีปัญหากับ controls.add และ combobox ครับ ......!?
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่