为了账号安全,请及时绑定邮箱和手机立即绑定

我是c#初学者,有的问题不是很确定,想问问大家。

我是c#初学者,有的问题不是很确定,想问问大家。

紫衣仙女 2022-04-21 13:15:25
1、Console.WriteLine("{0},{1},{0}",a,b);不知道这句话对不对,据说{0}可以重复使用,是怎么回事?若Console.WriteLine("{1},{0}",a,b);那么{1}是b还是a?2、ListBox中有selectedIndex属性,里面有值,是从0开始,那么就是默认ListBox中的item0从上往下数依次为0、1、2。。。?还是要在某个属性中设置0、1、2?(还有不确定是不是从0开始)3、textBox.selectedAll()就是选中全部文本吧?4、ListViewItem item = new ListViewItem(a);a一定要是string型吗?5、KeyDown和KeyPress有什么区别?6、C#字符串的第一个字符索引是0还是1?7、string strSql = string.format("insert into...;select @@identiey");有插入语句和查询标识列语句,用cmd.executeNoquery()还是cmd.executeScalar()?
查看完整描述

3 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

1、Console.WriteLine("{0},{1},{0}",a,b);写法没有问题,程序执行结果是
a,b,a

若Console.WriteLine("{1},{0}",a,b);那么{1}是b

2、索引都是从 0开始。

3、winform 里面是 SelectAll

4、ListViewItem一共有22个构造函数,它的参数不一定都是 string型。

5、KeyDown 事件、 KeyPress 事件
在控件有焦点的情况下按下键时发生。
键事件按下列顺序发生:
KeyDown
KeyPress
KeyUp
他俩的区别就是 执行顺序。你可以将KeyPress 理解为按下中,也就是进行中。

下面的代码示例使用 KeyPress 事件来禁止向控件输入字符。

// Boolean flag used to determine when a character other than a number is entered.
private bool nonNumberEntered = false;

// Handle the KeyDown event to determine the type of character entered into the control.
private void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
// Initialize the flag to false.
nonNumberEntered = false;

// Determine whether the keystroke is a number from the top of the keyboard.
if (e.KeyCode < Keys.D0 || e.KeyCode > Keys.D9)
{
// Determine whether the keystroke is a number from the keypad.
if (e.KeyCode < Keys.NumPad0 || e.KeyCode > Keys.NumPad9)
{
// Determine whether the keystroke is a backspace.
if(e.KeyCode != Keys.Back)
{
// A non-numerical keystroke was pressed.
// Set the flag to true and evaluate in KeyPress event.
nonNumberEntered = true;
}
}
}
}

// This event occurs after the KeyDown event and can be used to prevent
// characters from entering the control.
private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
// Check for the flag being set in the KeyDown event.
if (nonNumberEntered == true)
{
// Stop the character from being entered into the control since it is non-numerical.
e.Handled = true;
}
}

6、索引从0开始。

7、先了解以下方法说明,然后根据自己需要来决定用哪个方法
IDbCommand.ExecuteScalar 方法
执行查询,并返回查询所返回的结果集中第一行的第一列。忽略额外的列或行。
返回值
结果集中第一行的第一列。

IDbCommand.ExecuteNonQuery 方法
针对 .NET Framework 数据提供程序的 Connection 对象执行 SQL 语句,并返回受影响的行数。
返回值
受影响的行数。



查看完整回答
反对 回复 2022-04-24
?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

1:写法是完全没有问题的{0}表示是第一个引用(也就是逗号后面的第一个值),{1}就是第一个,依次类推,可以重复引用。
2:属性的索引是C#语言默认的,你不需要做任何设置.(0,1,2,3,4.....)
3:textBox.selectedAll()表示选中文本框所有的值
4:ListViewItem的构造函数不一定是string类型,有22个方法的重载
5:KeyDown表示你按下某个键的时候发生 KeyPress表示松开某个键的时候发生
6:同问题2 C#默认的索引都是从零开始,不仅仅是C# C,C++等所有的编程语言索引都是从0开始的所以string类型的索引也是从零开始的
7:executeNoquery()返回受此sql语句所影响的行数 executeScalar()方法返回的是查询语句第一行第一列的值.

查看完整回答
反对 回复 2022-04-24
?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

1、Console.WriteLine("{0},{1},{0}",a,b);不对
2、默认从0开始,不用设置
3、textBox.selectedAll()就是选中全部文本吧?似乎是,没用过
4、ListViewItem item = new ListViewItem(a);a一定要是string型吗?
应该是
但是这种使用习惯不好。
5、KeyDown按下,在按下的瞬间事件
KeyPress只要鼠标按就激发事件
6、0
7、cmd.executeScalar()


查看完整回答
反对 回复 2022-04-24
  • 3 回答
  • 0 关注
  • 140 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信