以下是我一直在关注的一些背景。
http://www.homeandlearn.co.uk/csharp/csharp_s12p9.html
它将转到数据库的最后一条或第一条记录。我想跳转到access数据库中的一个记录,用户需要在文本框中输入id号,然后在文本框中输入正确的行。
我想我可以从上面的网站使用这个代码。我已经实现了从上面的网站上的一切。
全局变量

int inc = 0;

导航记录,稍后我将在跳过按钮中调用
private void NavigateRecords()
{
      DataRow dRow = ds1.Tables["Laptops"].Rows[inc];

      txtMaker.Text = ds1.Tables["Laptops"].Rows[inc].ItemArray.GetValue(1).ToString();
      txtModel.Text = ds1.Tables["Laptops"].Rows[inc].ItemArray.GetValue(2).ToString();
      txtPrice.Text = ds1.Tables["Laptops"].Rows[inc].ItemArray.GetValue(3).ToString();
      txtBids.Text = ds1.Tables["Laptops"].Rows[inc].ItemArray.GetValue(4).ToString();
      txtScreen.Text = ds1.Tables["Laptops"].Rows[inc].ItemArray.GetValue(5).ToString();
      txtCPU.Text = ds1.Tables["Laptops"].Rows[inc].ItemArray.GetValue(6).ToString();
      txtMemory.Text = ds1.Tables["Laptops"].Rows[inc].ItemArray.GetValue(7).ToString();
      txtHD.Text = ds1.Tables["Laptops"].Rows[inc].ItemArray.GetValue(8).ToString();
      picLaptops.Image = Image.FromFile(ds1.Tables["Laptops"].Rows[inc].ItemArray.GetValue(9).ToString());
}

我的跳过按钮到目前为止…
private void btnSkip_Click(object sender, EventArgs e)
{
    NavigateRecords();
}

我很难做到这一点。我知道我想要什么,但缺乏做这件事的技能。这很令人沮丧。我不知道该怎么办。
如果有人能解决它,并给我看代码,我就可以理解它,并在其他地方使用它。
下面是下一个按钮的示例,如果有帮助,则转到下一个记录。
private void btnNext_Click(object sender, EventArgs e)
{
      if (inc != MaxRows - 1)
      {
            inc++;
            NavigateRecords();
      }
      else
      {
          MessageBox.Show("You have reached the end of available items", "End of Available Items", MessageBoxButtons.OK, MessageBoxIcon.Information);
      }
}

最佳答案

使用数据绑定,而不是手动为控件分配值。
创建模型类

public class MyClass
{
    public string Maker { get; set; }
    public double price { get; set; }
    // and so on, for all your fields
}

在visual studio的“数据源”资源管理器中为myclass添加对象数据源。
将数据源中的字段拖到表单中。visual studio会自动将bindingSource和bindingNavigator添加到表单中。
以以下形式将数据分配给BindingSource:
this.bindingSource1.DataSource = myData;

其中mydata是myClass对象的一些枚举。
对于数据库源也可以这样做。但就我个人而言,我更喜欢把数据放在课堂上。比直接操作数据集或表单字段更容易处理。

关于c# - 跳到C#中的数据库记录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8371996/

10-12 02:07