C#在unassailablee中显示所有学生成绩,自己写的出现错误,只能显示最后一个生的成绩

欢迎加入我们,一同切磋技术。 &
用户名: &&&
密 码: &
共有 4556 人关注过本帖
标题:[求助]如何将从数据库中取得的一个数据显示在lable上
等 级:新手上路
帖 子:40
&&问题点数:0&&回复次数:12&&&
[求助]如何将从数据库中取得的一个数据显示在lable上
我使用存储过程在SQL数据库中获取一个数据,可以正常显示在DataGridView中但是怎样才能用一个lable显示这个数据呢?请高手给点指点
搜索更多相关主题的帖子:
等 级:贵宾
威 望:20
帖 子:2882
可以先显示dataGrid1中的内容,通过点击dataGrid1中选中行,就可一得到你想要的下面的程序中,显示学生的信息,有sno,sname,sex ,在窗体上放置三个textbox/*下面的一段程序功能是:动态获取dataGrid1中选中行的各字段的值*/
private void dataGrid1_CurrentCellChanged(object sender, EventArgs e)
string myID = dataGrid1[dataGrid1.CurrentCell.RowNumber, 0].ToString().Trim();
SqlConnection cn = new SqlConnection("Data Source=Initial Catalog=Integrated Security=True");
SqlCommand cmd = new SqlCommand("Select * From student where ID='" + myID + "'", cn);
cn.Open();
SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
this.textBox1.Text = dr["sno"].ToString();
this.textBox2.Text = dr["sname"].ToString();
this.textBox3.Text = dr["sex"].ToString();
dr.Close();
cn.Close();
等 级:新手上路
帖 子:40
谢谢 liuminghui 的帮助这样是个不错的方法,但是要加一个dataGrid控件,如果我窗口中不加这个控件就没办法了吗?我只是想把一个数据显示出来,加一个dataGrid显得累赘啊.
不知道把dataGrid隐藏可不可以呢,反正我查询的结果也只有一条数据.......但隐藏了怎么选则那一条数据呢
[此贴子已经被作者于 11:06:28编辑过]
等 级:贵宾
威 望:20
帖 子:2882
我明白你的意思,你想直接显示一条数据库中的内容到textbox中,这个问题我也没有弄出来啊,我很想知道,我们一起顶吧!!
来 自:XAplus
等 级:贵宾
威 望:32
帖 子:1769
专家分:104
将READER 或DATASET的某个值可以直接赋给LABLE啊。
删吧删吧,把我的号给删了!
等 级:新手上路
帖 子:40
终于让我试出来了 分享一下//定义一个函数利用存储过程从数据库中读出数据.当然也可以不用存储过程
public static System.Data.DataRow chaxun1(string Name,string Type)
System.Data.SqlClient.SqlConnection cn = new SqlConnection(ConnectionString.Connection.ConnectionString);
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand();
da.SelectCommand =
cmd.Connection =
mandType = CommandType.StoredP
mandText = "cheng1";
SqlParameter name = new SqlParameter("@名称", SqlDbType.NVarChar);
SqlParameter type = new SqlParameter("@型号", SqlDbType.NVarChar);
name.Value = N
cmd.Parameters.Add(name);
type.Value = T
cmd.Parameters.Add(type);
DataSet ds = new DataSet();
da.Fill(ds, "MyTable");
DataTable dTable = ds.Tables[0];
DataRow dtRow = dTable.Rows[0];
return dtR//返回读取的这一行数据
//调用函数,将值赋给要显示它的控件this.label6.Text = chaxun1(comboBox1.Text,comboBox2.Text)["数量"].ToString();
[此贴子已经被作者于 11:58:00编辑过]
等 级:新手上路
帖 子:40
以下是引用jacklee在 11:56:31的发言:
将READER 或DATASET的某个值可以直接赋给LABLE啊。
我们都是新手,在学习阶段,希望能帮我们把代码写一下,呵呵,谢谢
等 级:新手上路
帖 子:330
我晕,这题目还需要斑竹亲自指导。多看看书MSDN上都有,自己查看帮助
来 自:XAplus
等 级:贵宾
威 望:32
帖 子:1769
专家分:104
呵呵,好的,以后帮你找找源码
删吧删吧,把我的号给删了!
等 级:贵宾
威 望:20
帖 子:2882
初学Delphi你好象走错房间了
版权所有,并保留所有权利。
Powered by , Processed in 0.056334 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights Reserved以前一直做web开发,基本上是加&br/&或者css控制word-break:break-word-wrap:break-Windows中Label控件是把Label的AutoSize属性设为False,这样就可以拖放了。记录一下。WinForm很多朋友都会在开发WinForm中遇到Label要显示的内容太长,但却不能换行的问题.这里我总结了几种方法,供大家参考:&&&&&&& 第一种是把Label的AutoSize属性设为False,手动修改Label的大小.这样的好处是会因内容的长度而自动换行,但是当内容的长度超过所设定的大小时,多出的内容就会无法显示.因此,这种方法适合于基本确定内容长度的时候使用.&&&&&&& 第二种是把Label的Dock设为FILL,同时将AutoSize属性设为False,这种方法可将上面所说的缺点修正,但是同时Label会将其它 控件的位置霸占,影响布局.因此,在使用该方法时,最好给Label加上个Panel或GroupBox控件.&&&&&&& 第三种是通过判断内容的长度,动态设置Label的大小.具体程序如下(Label控件取名为Label1,显示内容的字符串为str):&&&&&&& int LblNum = str.L&& //Label内容长度&&&&&&&&int RowNum = 10;&&&&&&&&&& //每行显示的字数&&&&&&&&float FontWidth = label1.Width / label1.Text.L&&& //每个字符的宽度&&&&&&&&int RowHeight=15;&&&&&&&&&& //每行的高度&&&&&&&&int ColNum = (LblNum - (LblNum / RowNum) * RowNum) == 0 ? (LblNum / RowNum) : (LblNum / RowNum) + 1;&& //列数&&&&&&&&label1.AutoSize =&&& //设置AutoSize&&&&&&&&label1.Width = (int)(FontWidth * 10.0);&&&&&&&&&&//设置显示宽度&&&&&&&&label1.Height = RowHeight * ColN&&&&&&&&&& //设置显示高度&&&&&&& 通过这种方法可以令Label每行所显示的字数得到控制,同时也动态的生成的所对应的行数,这对于排版有很大的好处,但是如果显示内容过多,该方法也会令 多出来的内容无法显示.因此,对于显示内容过长的时候,可以在外层加上Panel或GroupBox,设置AutoScroll为true,这样就不会因 为太长而导致Label高度扩大而影响其它控件的布局,同时也可以更好地显示完整的内容。WebForm最在做C#项目中有一个Label在数据库中获得数据,然而由于这个字段是一段很长的text值,在页面显示出很长的文字,页面变形,影响了页面的美观你可以将lable放在一个已经设置固定大小的表格中,然在程序代码html:&asp:label id="lblPosition"&style="word-break:break-word-wrap:break-word" runat="server"&&/asp:Label&请注意:&&对于没有数字的内容,下面这行完全满足要求,但加了数字就不行,就不行了。 &&& style="word-break:keep-word-wrap:normal";&&&&&有数字或者字母的用下面的: &&& style="word-break:break-word-wrap:break-word"; &或Label.Text & = & str.Replace( "\r\n ", " &br/& ");url:&关于换行:label1.Text = "你好" + Environment.NewLine + "大气象";WinForm今天碰到一段string在label中能正常换行,但是在textbox中却无法换行的问题。首先考虑是换行符的问题。在网上查了些资料:1、TextBox 中换行符为: "\r\n"。2、Windows 中的换行符(即:Environment.NewLine) 为 "\r\n"3、MessageBox.Show() 的换行符为 "\n"4、Console 的换行符为 "\n"5、换行符还因平台而已,Unix/Linux 平台换行符是 "\n"。6、为保持平台的通用性,最好用 Environment.NewLine。&&由于我用的是vb.net,语法与c#不同,有如下对应关系:&&&&&&&&&&&&&&&&&&&&&&&&&&& C#&& & & && VB.NET&&&&&&&&&&& VB.NET中的另一种表示方法&&&&&&&&&&&& 换行符 & & & \n&&&&&&&&&&&& vbLf&&&&&&&&&&&&&&&&&&&& Chr(10)&&&&&&&&&&&& 回车符&&&&&& \r&&&&&&&&&&&&& vbCr&&&&&&&&&&&&&&&&& & Chr(13)回车符+ 换行符&&&&&&& \r\n&&&&&&&&& vbCrLf&&&&&&&&&&& Chr(13) + Chr(10)&经测试, windows下:1 如果只有换行符或只有回车符,label中能显示换行,而textbox则不行2 如果同时有换行符和回车符,label和textbox都能正常换行&&这个2个结果在C#及VB.NET中都是一样的&附,如果只有换行符或只有回车符,用正则表达式做替换的方法:首先引入命名空间&Imports&System.Text.RegularExpressions&&然后Dim&sNew&As&String&=&Regex.Replace(sOld,&vbCrLf&+&"|"&+&vbCr&+&"|"&+&vbLf,&vbCrLf)& & & &很多朋友都会在开发WinForm中遇到Label要显示的内容太长,但却不能换行的问题.这里我总结了几种方法,供大家参考:&&&&&&& 第一种是把Label的AutoSize属性设为False,手动修改Label的大小.这样的好处是会因内容的长度而自动换行,但是当内容的长度超过所设定的大小时,多出的内容就会无法显示.因此,这种方法适合于基本确定内容长度的时候使用.&&&&&&& 第二种是把Label的Dock设为FILL,同时将AutoSize属性设为False,这种方法可将上面所说的缺点修正,但是同时Label会将其它控件的位置霸占,影响布局.因此,在使用该方法时,最好给Label加上个Panel或GroupBox控件.&&&&&&& 第三种是通过判断内容的长度,动态设置Label的大小.具体程序如下(Label控件取名为Label1,显示内容的字符串为str):&&&&&&& int LblNum = str.L&& //Label内容长度&&&&&&&&int RowNum = 10;&&&&&&&&&& //每行显示的字数&&&&&&&&float FontWidth = label1.Width / label1.Text.L&&& //每个字符的宽度&&&&&&&&int RowHeight=15;&&&&&&&&&& //每行的高度&&&&&&&&int ColNum = (LblNum - (LblNum / RowNum) * RowNum) == 0 ? (LblNum / RowNum) : (LblNum / RowNum) + 1;&& //列数&&&&&&&&label1.AutoSize =&&& //设置AutoSize&&&&&&&&label1.Width = (int)(FontWidth * 10.0);&&&&&&&&&&//设置显示宽度&&&&&&&&label1.Height = RowHeight * ColN&&&&&&&&&& //设置显示高度&&&&&&& 通过这种方法可以令Label每行所显示的字数得到控制,同时也动态的生成的所对应的行数,这对于排版有很大的好处,但是如果显示内容过多,该方法也会令多出来的内容无法显示.因此,对于显示内容过长的时候,可以在外层加上Panel或GroupBox,设WebForm解决方法:1.手动换行:在换行的位置加&br/&就行了2.指定长度换行+ 不破坏单词:(1)设置label宽度 width=100px&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& (2)设置label style="WORD-WRAP: break-word"
阅读(...) 评论()19660人阅读
.net控件使用(2)
& & & & WinForm中,Label控件是最常用的了。可有时需要它的换行,只能在后台用\r\n或Environment.NewLine。原来,换行还可以通过前台界面属性设置来实现。
换行主要用到AutoSize、MaximumSize和Size三个属性。添加一个Label控件,AutoSize的属性默认为True,MaximumSize的值均为0。只需要将MaximumSize的Width属性设置为需要显示的宽度即可,Height=0自动调整。
如果将AutoSize设置为false,MaximumSize的height就不能再为0。否则,会出现Label控件显示不出来,即使调整了Label的高度,设计界面显示正常,运行起来也会发现找不到Label控件。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:356519次
积分:2535
积分:2535
排名:第13497名
原创:22篇
转载:20篇
评论:28条
(1)(2)(1)(7)(9)(2)(4)(2)(1)(2)(1)(1)(1)(7)(1)您还可以使用以下方式登录
当前位置:&>&&>&&>& > 基于C#/SQLServer学生学业水平成绩管理系统的实现
基于C#/SQLServer学生学业水平成绩管理系统的实现
摘要:职业学校学生学业水平测试覆盖面广,数据量大,为了能方便有效的管理学生成绩,设计此学生学业水平成绩管理系统,使数据的录入、查询、删除及修改等更加方便简洁,提供强大的管理功能,方便教??全面直观的成绩分析。该文从需求分析、功能设计及实现加以阐述。
  关键词:SQL;成绩管理   中图分类号:TP311 文献标识码:A 文章编号:(1-02   1 概述   目前学业水平测试在我校如火如荼地进行着,学业水平测试是有教育行政部门统一组织的第三方标准参考考试,测试内容一般都是学生有能力完成的学习任务,所测得成绩数据数据能全面有效地反映检测对象的能力。由于本测试所得成绩数据量大,及覆盖面广,如何有效管理此相关数据,成了本系统存在的依据。本系统以数据库应用程序的开发工具Visual Studio 2005 作为开发工具,创建一个数据库应用程序,将应用程序与数据库接口、数据库管理系统和数据库有机地结合起来,使用C#语言来对数据库进行常见的操作,实现一个简单的学生学业水平成绩管理系统。   2 基本概念   Visual Studio 2005是美国微软公司推出的开发工具,它提供一套完整的开发工具集,用于生成 ASP.NET Web 应用程序、Windows 桌面应用程序和移动应用程序等。在由于VS 2005 中使用了统一的IDE 环境,使开发跨语言平台的应用程序成为可能,程序员可以根据自己的实际情况使用不同的语言(如C#、VB 等)编写代码。   3 项目方案设计   数据库应用系统的实现,首先要对该数据库应用系统进行功能需求分析;其次要进行数据库分析设计;然后对系统进行设计,包括功能详细设计与界面设计等;最后完成编码以及测试等。   3.1 功能需求分析   1)本项目主要包括三个模块:学生基本信息管理、课程管理和成绩管理。主要针对学生学业水平成绩进行管理,包括学生成绩查询、成绩录入、成绩修改和成绩删除。   2)本系统的主要功能:   l 成绩查询:查询所有成绩、根据学号查询成绩、根据课程查询成绩,同时能够进行简单的统计汇总。   l 成绩录入:单个学生成绩录入、批量学生成绩录入。   l 成绩修改:根据学号和课程修改学生成绩。   l 成绩删除:根据学号和课程删除学生成绩。   3.2 开发环境   数据库管理系统SQL Server 2005   数据库应用程序的开发工具Visual Studio 2005。   3.3数据库设计   “学生学业水平成绩管理系统”主要需要三张表信息:学生表tb_student、课程表tb_course 和成绩表tb_score。   3.4功能模块设计   3.5全局模块设计   由于“学生学业水平成绩管理系统”中经常需要进行数据库访问,因此在项目中添加一个公共类Common.cs,在其中编写访问数据库操作的公共代码,不但可以降低代码的冗余度,而且可以提高系统模块的独立性。   3.6 项目实施   3.6.1创建主窗体   设置窗体属性:   并且添加button1、button2、button3、button4四个按钮,设置相应属性,通过单击这四个按钮,实现打开相应的学生成绩查询窗体、学生成绩查询窗体、打开学生成绩修改窗体、打开学生成绩删除窗体,并执行相应的功能。   比如通过单击Button1这个按钮打开学生成绩查询窗体,具体代码如下:   3.6.2.1 查询所有学生成绩窗体   在窗体中添加一个按钮和一个DataGridView 控件,并设置窗体及控件相关属性,当点击查看所有学生成绩按钮时,在dataGridView1 控件中以表格的形式显示所有学生成绩。   3.6.2.2 按学号查询学生成绩窗体   在窗体中添加三个Lable控件、一个TextBox控件、一个Button控件和一个DataGridView控件,并设置窗体及相关空间属性,当在文本框中输入要查询的学生学号,点击“查询”按钮,在dataGridView中显示该学生的所有成绩,并在lblAvg中显示该学生的平均成绩。   3.6.2.3按课程查询成绩窗体   在窗体中添加7个Lable控件、一个下拉列表ComboBox控件、一个按钮控件和一个DataGridView控件,并设置窗体及相关控件属性,可以在下拉列表中选择要查询的课程名称,点击“查询”按钮。在DataGridView中显示该课程所有学生成绩,并分别在lblMax、lblMin和lblAvg标签空间中显示该课程的最高分、最低分和平均分。   3.6.3学生成绩录入窗体   设置窗体属性Add(Form),并添加两个按钮button1、button2,当单击这两个按钮,分别出现相应的窗口,即单个学生成绩录入窗体和批量学生成绩录入窗体,并执行相应的功能。   3.6.3.1 单个学生成绩录入窗体   在窗体中添加3个Label控件、两个TextBox控件、一个comboBox控件和一个Button控件,设置以上控件属性和单个学生成绩录入窗体属性AddByStudent(Form),实现在下拉列表中选择要录入的课程名称,然后分别在文本框中输入学号和成绩,点击“录入成绩”按钮。判断该学生是否存在以及该学生的课程成绩是否已存在,如若该学生存在并且该学生课程成绩不存在,则成功完成成绩录入,否则显示相应错误信息。   3.6.3.2批量学生成绩录入窗体   在窗体中添加一个Label 控件、一个ComboBox 控件、一个DataGridView 控件和一个Button 控件,设置以上控件属性以及批量学生成绩录入窗体属性AddByCourse(Form),实现在下拉列表中选择要录入的课程名称,会在DataGridView 中显示尚未录入该课程成绩的所有学生。在DataGridView 中添加一列用于输入学生成绩,然后点击“录入成绩”按钮,完成学生成绩录入。   3.6.4学生成绩修改窗体   在窗体中添加3 个Label 控件、2 个TextBox 控件、1 个ComboBox 控件和一个Button控件,设置以上控件属性以及并设置窗体属性UPdate(Form),实现在文本框txtSid 中输入要修改成绩的学生的学号,然后选择要修改的课程名称。如若该学生存在,且该学生成绩也存在,会在文本框txtScore 中显示该学生该门课程的成绩。在txtScore 中重新输入成绩,点击“修改”按钮,如成功,则显示“修改成功!”,否则显示相应错误信息。   3.6.5学生成绩删除窗体   在窗体中添加2 个Label 控件、1 个TextBox 控件、1 个ComboBox 控件和1 个Button控件,设置以上控件属性以及并设置窗体属性Delete(Form),在txtSid 文本框中输入要删除成绩的学生的学号,然后选择要删除的课程成绩名称。单击“删除”按钮,如若成功,则显示“成功删除”,否则显示相应错误信息。   4 结束语   本项目简单叙述了一个小型的“学生学业水平成绩管理系统”数据库应用程序开发的过程及部分代码,还存在一定的不足之处,有待进一步优化改进。   参考文献:   [1] 肖文?.基于SQLServer的学生成绩管理系统设计[J].计算机光盘软件与应用,2016(5).   [2] 张琼.论实施中等职业教育学业水平测试的必要性和可行性[J].广州职业教育论坛,2015(8).百度搜索“就爱阅读”,专业资料、生活学习,尽在就爱阅读网,您的在线图书馆!
欢迎转载:
推荐:    

我要回帖

更多关于 cad写入 关闭出现错误 的文章

 

随机推荐