ScrollingDataBinding.cs
上传用户:lxycoco
上传日期:2022-07-21
资源大小:38457k
文件大小:3k
源码类别:

C#编程

开发平台:

Others

  1. using System;
  2. using System.Windows.Forms;
  3. using System.Data;
  4. using System.Data.SqlClient;
  5. public class ScrollingDataBinding : System.Windows.Forms.Form
  6. {
  7. private Button retrieveButton;
  8. private TextBox textName;
  9. private TextBox textQuan;
  10. private TrackBar trackBar;
  11. private DataSet ds;
  12. /// <summary>
  13. /// Construct the window.
  14. /// </summary>
  15. /// <remarks>
  16. /// This method constructs the window by creating both the data grid and the button.
  17. /// </remarks>
  18. public ScrollingDataBinding ( )
  19. {
  20. this.AutoScaleBaseSize = new System.Drawing.Size (5, 13);
  21. this.ClientSize = new System.Drawing.Size (464, 253);
  22. this.Text = "09_ScrollingDataBinding" ;
  23. this.retrieveButton = new Button();
  24. retrieveButton.Location = new System.Drawing.Point(4, 4);
  25. retrieveButton.Size = new System.Drawing.Size(75, 23);
  26. retrieveButton.TabIndex = 1;
  27. retrieveButton.Anchor = AnchorStyles.Top | AnchorStyles.Left ;
  28. retrieveButton.Text = "Retrieve";
  29. retrieveButton.Click += new System.EventHandler
  30. (this.retrieveButton_Click);
  31. this.Controls.Add (this.retrieveButton);
  32. this.textName = new TextBox();
  33. textName.Location = new System.Drawing.Point(4, 31);
  34. textName.Text = "Please click retrieve...";
  35. textName.TabIndex = 2;
  36. textName.Anchor = AnchorStyles.Top | AnchorStyles.Left | 
  37. AnchorStyles.Right ;
  38. textName.Size = new System.Drawing.Size(456, 20);
  39. textName.Enabled = false;
  40. this.Controls.Add(this.textName);
  41. this.textQuan = new TextBox();
  42. textQuan.Location = new System.Drawing.Point(4, 55);
  43. textQuan.Text = "";
  44. textQuan.TabIndex = 3;
  45. textQuan.Anchor = AnchorStyles.Top | AnchorStyles.Left | 
  46. AnchorStyles.Top;
  47. textQuan.Size = new System.Drawing.Size(456, 20);
  48. textQuan.Enabled = false;
  49. this.Controls.Add(this.textQuan);
  50. this.trackBar = new TrackBar();
  51. trackBar.BeginInit();
  52. trackBar.Dock = DockStyle.Bottom ;
  53. trackBar.Location = new System.Drawing.Point(0, 275);
  54. trackBar.TabIndex = 4;
  55. trackBar.Size = new System.Drawing.Size(504, 42);
  56. trackBar.Scroll += new System.EventHandler(this.trackBar_Scroll);
  57. trackBar.Enabled = false;
  58. this.Controls.Add(this.trackBar);
  59. }
  60. protected void retrieveButton_Click(object sender, System.EventArgs e)
  61. {
  62. retrieveButton.Enabled = false ;
  63. ds = CreateDataSet ( ) ;
  64. textName.DataBindings.Add ( "Text" , ds , "Products.ProductName" ) ;
  65. textQuan.DataBindings.Add ( "Text" , ds , "Products.QuantityPerUnit" ) ;
  66. trackBar.Minimum = 0 ;
  67. trackBar.Maximum = this.BindingContext[ds,"Products"].Count - 1 ;
  68. textName.Enabled = true ;
  69. textQuan.Enabled = true ;
  70. trackBar.Enabled = true ;
  71. }
  72. protected void trackBar_Scroll ( object sender , System.EventArgs e )
  73. {
  74. this.BindingContext[ds,"Products"].Position = trackBar.Value ;
  75. }
  76. /// <summary>
  77. /// Create a DataSet for the example
  78. /// </summary>
  79. /// <returns>The Products DataSet</returns>
  80. private DataSet CreateDataSet ( )
  81. {
  82. string customers = "SELECT * FROM Products";
  83. SqlConnection con = new SqlConnection ( Login.Connection ) ;
  84. SqlDataAdapter da = new SqlDataAdapter ( customers , con ) ;
  85. DataSet ds = new DataSet ( ) ;
  86. da.Fill ( ds , "Products" ) ;
  87. return ds ;
  88. }
  89. /// <summary>
  90. /// Display the application window
  91. /// </summary>
  92. static void Main() 
  93. {
  94. Application.Run(new ScrollingDataBinding());
  95. }
  96. }