分享
 
 
 

跟我一起学习.net之一

王朝c#·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

.net 问题与解决

问题一:

SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);

SqlDataAdapter da = new SqlDataAdapter("SELECT say FROM 口号", conn);

DataSet ds = new DataSet();

da.Fill(ds, "kh");

z.DataSource=ds.Tables["kh"].DefaultView;

z.DataBind();

原因与解决方法:

引入名词空间

using System.Data.SqlClient;

using System.Configuration;

*************************************************

问题二:

用microsoft visual studio.net 向导,先是不了数据,不信大家可以试试,下面是我的具体步骤:

1。在工程中新建一个web用户控件:testGrid.ascx

2。往页面中拖放一个SqlDataAdaper,出现一个对话框配置SqlDataAdaper1,

3。点击“下一步”;选择数据连接(我已经有数据连接了,所以从下拉列表中选一项)

4。点击“下一步”选择“使用sql语句”

5。点击“下一步”,点击“查询生成器”选择我想要datagrid显示的表,

6。点击“完成”程序自动生成一个sqlConnection1

7。选中SqlDataAdaper1,点“生成数据集”,接受默认设置,点“确定”,程序自动生成dataSet11

8。!!往页面拖放DataGrid,ID 为DataGrid1

9。选中DataGrid1,点“属性生成器”,设置DataGrid1的属性:

数据源:dataSet11

列: 编辑,更新,取消,---选定的列中把我不想用户编辑的字段的字段设置为“只读”,这是为什么我要使用向导的原因,因为我要是简单的按照emilycsdn(emily)的步骤来的话程序把我的唯一标示的字段也设置为可编辑的状态,这是我不想要的。这时候aspx中关键部分代码为

<asp:DataGrid id="DataGrid1" runat="server" DataKeyField="Type_ID" DataMember="UnitType" EditItemIndex="0">

<Columns>

<asp:BoundColumn DataField="Type_ID" ReadOnly="True" HeaderText="Type_ID"></asp:BoundColumn>

<asp:BoundColumn DataField="Type_Name" HeaderText="Type_Name"></asp:BoundColumn>

<asp:BoundColumn DataField="Type_comment" HeaderText="Type_comment"></asp:BoundColumn>

<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="更新" CancelText="取消" EditText="编辑"></asp:EditCommandColumn>

</Columns>

</asp:DataGrid>

解决方法:

虽然已将datagrid服务器控件绑定到我们所创建的数据集,但是数据集本身并不会自动填入;相反地,你必须在调用数据适配器方法来自动填入数据集,即使填入数据集后

datagrid 服务器控件不会自动显示数据,你必须将datagrid服务器控件绑定其数据源

在Page_Load中写

sqlConnection1.Open();

sqlDataAdapter1.Fill(dataSet11);

DataGrid1.DataBind();

即可!

***********************************************

问题三:

sqlconnection连接失败,(用属性生成器时)

解决方法:

ConnectinString:server=localhost;uid=sa;pwd=sa;database=test

**********************************************

问题四;

如何除掉datagrid属性生成器中多余的列

解决方法:

我们去掉“在运行时自动创建列”前面的钩,这样,系统不再自动创建列,而只显示你绑定的列。

*************************************************

定制DataGrid的外观:

1、选择要显示的列:

在默认的情况下,我们在DataGrid中显示的列就是我们在执行Sql查询语句的时候查询出来的列,什么意思呢?如果我们用Select * from myTable,那么,将会显示所有的列,如果,我们用Select field1,field2 from mytable那么就只显示两个列。所以,在Datagrid中要选择你要显示的列,最简单的方法不是修改属性来完成,而是通过修改Sql查询语句来完成。

还有一个小问题,就是,我们在设计数据库的时候,字段的名称往往是英文的,但是,我们有想在DataGrid中使用中文,我们就需要在select语句中给每个字段取一个中文的别名,比如:Select Name As 姓名,cardid as 工号 from mytable。

有时候,我们不方便用这种方式来选择我们要显示的列,那么,我们就使用属性生成器来设置好了。

在设计视图中,选中DataGrid,然后 “属性窗口”的最下方就会有“属性生成器”的链接,点击这个链接(或者找到columns属性),会弹出一个对话框,我们就可以通过这个对话框来设置要选择的列了:

首先,我们去掉“在运行时自动创建列”前面的钩,这样,系统不再自动创建列,而只显示你绑定的列。

单击左侧的“列”,在右边就出现了“绑定列”“按钮列”等等,这里我们要选择“绑定列”。加入一个绑定列,然后,分别填写“页眉文本”等项目。页眉文本指的是页标题,“数据字段”填写你要显示的字段名称。然后,你要绑定几个字段,就选择几个绑定列。

2、修改DataGrid的样式

默认情况下的DataGrid画出来的表格很难看,所以,我需要定制它的样式。选中DataGrid,属性窗口中的最下方就会出现一个“自动套用格式”的链接,单击这个链接,就会弹出一个让你选择格式的对话框,选择你中意的格式。

我不知道你会怎么认为,反正,我觉得这里面有两种格式很合我的胃口,并且,也符合公司的设计规范,所以,我往往会使用这些格式。如果你还不满意,那么你就需要自己定制了。自己定制也很简单,就是,你去修改“样式”类的属性值就可以了。另外,你还可以通过属性生成器来完成样式属性的修改。比如,你不想让你的表格回行,那么,你就到属性生成器中,选择“格式”,然后,在右边选择“项”,把各个分项中的“单元格内文本换行”前面的钩去掉就ok了。

*************************************************************

动态加载用户控件:

想要用程序控制方法给web form网页加入用户控件,依照布凑进行

1:先将欲动态加入用户控件的web form的网页的。aspx文件切换到html视图,然后在顶端使用语法如下的@Reference指令语句来登陆用户控件:

<%@Reference Control="pathtofile"%>

@Reference指令能够让你以动态方法编译与链接用户控件,并将它加至网页的ControlCollection对象中,此举可以让你在调用LoadControl方法之后,将返回的类型转换。比方说,如果你要使用MyFirstWebUserControl.ascx,请这样写:

<%@Reference Control="MyFirstWebUserControl.ascx"%>

2:在代码后置类文件(web form.cs)文件中,建立用户控件实例,并视需要设置用户控件的相关属性,写法如下:

UserControl mycontrol=(UserControl)LoadControl("MyFirstWebUserControl.ascx");

((MyFirstWebUserControl)mycontrol).Backcolor="red";

((MyFirstWebUserControl)mycontrol).Forecolor="Yellow";

page.Controls.Add(mycontrol);

如果使用add方法将用户控件加至ControlConnection对象,它们会被放到集合中的结尾。如果你希望将用户控件加至集合中

特定的索引位置,请使用AddAt方法。

或者利用容器:Panel利用容器可以有效地控制控件的位置:

Panel1.Controls.Add(mycontrol);

*********************************************************

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有