回 帖 发 新 帖 刷新版面

主题:[原创]好心人指点指点?

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace WindowsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            // TODO: 这行代码将数据加载到表“hdDataSet1.toAddress”中。您可以根据需要移动或移除它。  // TODO: 这行代码将数据加载到表“hdDataSet.toAddress”中。您可以根据需要移动或移除它。
           //this.toAddressTableAdapter.Fill(this.hdDataSet.toAddress);
           SqlConnection con = new SqlConnection("server=.;database=HD;uid=sa;pwd= ");
           con.Open();
           SqlDataAdapter da = new SqlDataAdapter("select * from toAddress", con);
           DataSet ds = new DataSet("toAddress");
           da.Fill(ds);
           listBox1.DataSource = ds;
          
           listBox1.DataBindings.Add(new Binding("listBox1", ds, "toAddress.toAddress"));
           comboBox1.DataSource = ds;
           comboBox2.DataSource = ds;
           comboBox1.DataBindings.Add(new Binding("龙岩", ds, "toAddress.toAddress"));
           con.Close();
        }

       
    }
}
提示是这个问题?{"无法绑定到目标控件的属性“listBox1”。\r\n参数名: porpertyName"}
哪位好心人指点指点。。。[em10]

回复列表 (共7个回复)

沙发

怎么没有人帮帮忙呢?哪位达人帮帮忙啊?

板凳

listBox1.DataBindings.Add(new Binding("listBox1", ds, "toAddress.toAddress"));
这句应该是
  listBox1.DataBindings.Add(new Binding("Text", ds, "toAddress.toAddress"));

3 楼

这样我设置了,可是它环是会提示说

未处理 System.ArgumentException
  Message="无法绑定到目标控件的属性“Test”。\r\n参数名: PropertyName"
  Source="System.Windows.Forms"
  ParamName="PropertyName"
  StackTrace:
       在 System.Windows.Forms.Binding.CheckBinding()
       在 System.Windows.Forms.Binding.SetBindableComponent(IBindableComponent value)
       在 System.Windows.Forms.ControlBindingsCollection.AddCore(Binding dataBinding)
       在 System.Windows.Forms.ControlBindingsCollection.Add(Binding binding)
       在 Selling.Form1.Form1_Load(Object sender, EventArgs e) 位置 D:\MyWeb\Selling\Selling\Form1.cs:行号 29
       在 System.Windows.Forms.Form.OnLoad(EventArgs e)
       在 System.Windows.Forms.Form.OnCreateControl()
       在 System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
       在 System.Windows.Forms.Control.CreateControl()
       在 System.Windows.Forms.Control.WmShowWindow(Message& m)
       在 System.Windows.Forms.Control.WndProc(Message& m)
       在 System.Windows.Forms.ScrollableControl.WndProc(Message& m)
       在 System.Windows.Forms.ContainerControl.WndProc(Message& m)
       在 System.Windows.Forms.Form.WmShowWindow(Message& m)
       在 System.Windows.Forms.Form.WndProc(Message& m)
       在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       在 System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
       在 System.Windows.Forms.SafeNativeMethods.ShowWindow(HandleRef hWnd, Int32 nCmdShow)
       在 System.Windows.Forms.Control.SetVisibleCore(Boolean value)
       在 System.Windows.Forms.Form.SetVisibleCore(Boolean value)
       在 System.Windows.Forms.Control.set_Visible(Boolean value)
       在 System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
       在 System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
       在 System.Windows.Forms.Application.Run(Form mainForm)
       在 Selling.Program.Main() 位置 D:\MyWeb\Selling\Selling\Program.cs:行号 17
       在 System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
       在 System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
       在 Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
       在 System.Threading.ThreadHelper.ThreadStart_Context(Object state)
       在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       在 System.Threading.ThreadHelper.ThreadStart()


这是什么意思?这里面的第一个参数和第三个参数分别是什么意思。我还是不太清楚,你能给我说清楚点吗?



另外,顺便问你一下在一个SqlConnection里面能不能new两个SqlDataAdapter呢?


谢谢tujun大哥!!!

4 楼

不好意思tujun大哥。我写错了。郁闷。刚刚开始学习这个,真的好累啊。自学真的有点难度啊!!

5 楼

可以new多个SqlDataAdapter,只要SqlConnection没有关闭或销毁

6 楼

ListControl.DataSource 属性  
备注
有两种方式可以填充 ComboBox 和 ListBox 控件。
例如,使用 Add 方法可向 ComboBox 中添加对象。也可以通过用 DataSource、DisplayMember 和 ValueMember 属性填充 ComboBox 来向 ComboBox 添加对象。
设置了 DataSource 属性之后,用户不能修改项集合。
如果设置 DataSource 属性导致数据源更改,则将引发 DataSourceChanged 事件。如果设置此属性导致数据成员更改,则将引发 DisplayMemberChanged 事件。
将 DataSource 设置成空引用(Visual Basic 中为 Nothing)时,DisplayMember 将设置为空字符串 ("")。
示例
[Visual Basic, C#] 下面的示例是一个完整的应用程序,它说明在 ListBox 类实现了 ListControl 类的 DataSource、DisplayMember、ValueMember 和 SelectedValue 等成员后,如何使用这些成员。本示例加载了 ArrayList 和列表框。当用户在列表框中选择了一个项时,将把选定的值用于返回与选定的项关联的数据。

7 楼

谢谢。
tujun大哥。

我来回复

您尚未登录,请登录后再回复。点此登录或注册