您的位置:程序门 -> .net技术 -> c#



急!!!!!! datagridview中如何实现和combobox一样的功能


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


急!!!!!! datagridview中如何实现和combobox一样的功能[已结贴,结贴人:iocouoc]
发表于:2007-01-15 13:39:48 楼主
就在datagridview中,点击某个单元格的时候会有和combobox一样的下拉菜单列出选择项,当焦点在该单元格上的时候能显示,当焦点不在该单元格上的时候不显示。谢谢了。
发表于:2007-01-15 13:46:111楼 得分:0
datagridview中有combobox,不過datagridview中的combobox綁定數據有點不一樣﹗
发表于:2007-01-15 14:27:272楼 得分:0
datagridview自带的是整列都显示为datagridcomboboxcolumn,怎么能控制它是焦点的时候显示,不是焦点的时候不显示呢。还有“下拉菜单”是从表中取得的。谢谢。
发表于:2007-01-16 10:10:123楼 得分:0
谁来帮忙解决下,谢谢哦
发表于:2007-01-16 10:25:334楼 得分:15
private   void   refreshdatagrid()
                {
                        if   (da   !=   null)
                        {
                                da.dispose();
                        }
                        if   (ds   !=   null)
                        {
                                ds.dispose();
                        }

                        sqlconnection   conn   =   manageconn.getconnection();
                        string   sql   =   " ";
                        sql   =   "select   sm.mmid,pm.mmname,sm.sid,sm.smname,sm.createdate,sm.tooltips,case   when   sm.isused=1   then   'true '   else   'false '   end   as   isused,sm.serialno,sm.description   ";
                        sql   +=   "from   pgsubmenu   as   sm   inner   join   pgmainmenu   pm   on   sm.mmid=pm.sid   order   by   pm.mmname,sm.serialno ";
                        sqlcommand   cmd   =   new   sqlcommand(sql,conn);
                        da   =   new   sqldataadapter(cmd);

                        ds   =   new   dataset();
                        da.fill(ds,   "pgsubmenu ");
                        submenubindingsource.datasource   =   ds;
                        submenubindingsource.datamember   =   "pgsubmenu ";

                        dgvsubmenu.autogeneratecolumns   =   false;
                        dgvsubmenu.datasource   =   submenubindingsource;
                        manageconn.freeconnection(conn);

                        sql   =   "select   sid   as   mmid,mmname   from   pgmainmenu   order   by   serialno ";
                        conn=manageconn.getconnection();
                        cmd   =   new   sqlcommand(sql,   conn);
                        sqldataadapter   da1   =   new   sqldataadapter(cmd);
                        da1.fill(ds,   "pgmainmenu ");

                        mmname.datasource   =   ds.tables[ "pgmainmenu "];
                        mmname.displaymember   =   "mmname ";
                        mmname.valuemember   =   "mmid ";
                        mmname.displaystyleforcurrentcellonly   =   true;

                        manageconn.freeconnection(conn);

                        dgvsubmenu.columns[0].datapropertyname   =   "mmid ";//需對應為   combox.valuemember屬性

                        dgvsubmenu.columns[1].datapropertyname   =   "sid ";
                        dgvsubmenu.columns[2].datapropertyname   =   "smname ";
                        dgvsubmenu.columns[3].datapropertyname   =   "createdate ";
                        dgvsubmenu.columns[4].datapropertyname   =   "tooltips ";
                        dgvsubmenu.columns[5].datapropertyname   =   "isused ";
                        dgvsubmenu.columns[6].datapropertyname   =   "serialno ";
                        dgvsubmenu.columns[7].datapropertyname   =   "description ";

                        isused.truevalue   =   boolean.parse( "true ");
                        isused.falsevalue   =   boolean.parse( "false ");

                        dgvsubmenu.readonly   =   true;
                        dgvsubmenu.refresh();
                        manageconn.freeconnection(conn);
                }
发表于:2007-01-16 10:26:535楼 得分:0
以上只能實現下拉菜单”數據是从表中取得,怎么能控制它是焦点的时候显示,不是焦点的时候不显示還不能實現,我沒解決﹗
发表于:2007-01-16 10:31:336楼 得分:5
((datagridviewcomboboxcolumn)this.datagridview1.columns[ "column1 "]).displaystyle   =   datagridviewcomboboxdisplaystyle.nothing;
发表于:2007-01-16 12:40:037楼 得分:0
谢谢,先学习下,一会给分。
发表于:2007-01-17 08:37:478楼 得分:0
zhuzhao谢谢了,能再给外例子吗,发到我邮箱里(inffouta@gmail.com),谢谢


快速检索

最新资讯