|
|
|
как связать три Комбобокса
|
|||
|---|---|---|---|
|
#18+
Сумел-таки связать два Комбобокса через ХП: Combobox1, создал ХП ALTER PROCEDURE SP_ContactName_CustomerID AS SELECT ContactName, CustomerID FROM Customers /* SET NOCOUNT ON */ RETURN привязал Imports System.Data Imports System.Data.SqlClient Imports System.Text Imports System.Text.RegularExpressions Public Class frmCombobox Private Sub frmCombobox_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: данная строка кода позволяет загрузить данные в таблицу "ComboDataSet.SP_ContactName_CustomerID". При необходимости она может быть перемещена или удалена. Me.SP_ContactName_CustomerIDTableAdapter.Fill(Me.ComboDataSet.SP_ContactName_CustomerID) 'Me.SP_ContactName_CustomerIDTableAdapter.Fill(Me. Using conn As New SqlConnection(My.Settings.NorthwindConnectionString) Dim sqlStr1 As String = "SP_ContactName_CustomerID" Dim SqlComm As New SqlCommand(sqlStr1, conn) Dim sqlDA As New SqlDataAdapter(SqlComm) Dim CustomerDS As New DataSet SqlComm.CommandType = CommandType.StoredProcedure Try sqlDA.Fill(CustomerDS) Catch ex As Exception End Try With ComboBox1 .DataSource = CustomerDS.Tables(0) .DisplayMember = "ContactName" .ValueMember = "CustomerID" End With End Using End Sub получаю в нём имена для второго Combobox2 создал ХП ALTER PROCEDURE sp_CustomerID_EmploeeID @CustomerID nchar(5) AS SELECT CustomerID, EmployeeID FROM Orders WHERE (CustomerID = @CustomerID) RETURN привязал: Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged Dim OrdersTableAdapter As New ComboDataSetTableAdapters.sp_CustomerID_EmploeeIDTableAdapter() Dim typedDS As New ComboDataSet() Try OrdersTableAdapter.Fill(typedDS.sp_CustomerID_EmploeeID, CStr(ComboBox1.SelectedValue)) Catch ex As Exception End Try With ComboBox2 .DataSource = typedDS.sp_CustomerID_EmploeeID .DisplayMember = "EmploeeID" .ValueMember = "CustomerID" End With End Sub сразу получаю соответствующий CustomerID в Combobox2 Все ХП и таблицы добавлены в новый DATASET ComboDataSet. И вроде всё нормально, но как связать значения из этих двух Combobox для получения значений в ещё одном через следующую ХП: ALTER PROCEDURE sp_shipname1 @ContactName nvarchar(30), @CustomerID nchar(5) AS SELECT Orders.ShipName, Orders.CustomerID, Customers.ContactName FROM Orders INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID WHERE (Orders.CustomerID = @CustomerID) AND (Customers.ContactName = @ContactName) RETURN ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.04.2010, 16:47 |
|
||
|
|

start [/forum/topic.php?fid=17&fpage=59&tid=1351352]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 202ms |
| total: | 314ms |

| 0 / 0 |
