Ben böyle bir veritabanı vardır:
ve ben bir sınıf put kullanarak bu olduğunu bir datagridview
içine veri var:
class DBConnection
{
public static void GetList(Form2 frm2)
{
string DBPath = Application.StartupPath;
OleDbConnection Connection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source="[email protected]"\DataBase\SampleFeeds.accdb");
OleDbDataAdapter DataA = new OleDbDataAdapter("Select * from FeedLibrary", Connection);
DataTable Dtable = new DataTable();
DataA.Fill(Dtable);
frm2.SelectedFeeddataGridView.DataSource = Dtable;
}
}
ve bu benim form yüküdür:
Şimdiye kadar her şey yolunda. örneğin
Ben bir düğmeye GrassLegumeForagebtn
kullanıcı tıklama benim FeedSelectListBox
Çimen kategorisinde olduğu Yem Adları sadece tüm doldururken için istediğim bir liste kutusu FeedSelectListBox
, var:
şimdi bir sorum var/Baklagil Yem.
Bunu nasıl yapmalıyım? Damirchi yardımıyla
Sorunum
// -----------------
çözüldü Ama şimdi başka bir soru vardır: ne zaman istiyorum kullanıcı liste veri kutusundan, veri tabanı görünümünde bulunan veri tabanındaki (ad, numara, yayın türü ve ,,, gibi) tüm verilerini listeler.
benimSelectFeedbtn
bu kodu kullanılan ama çalışmıyor:
private void SelectFeedbtn_Click(object sender, EventArgs e)
{
string StrCon = System.Configuration.ConfigurationManager.ConnectionStrings["FeedLibraryConnectionString"].ConnectionString;
OleDbConnection Connection = new OleDbConnection(StrCon);
string FeedSelectedID = FeedSelectListBox.SelectedValue.ToString();
OleDbDataAdapter DataA = new OleDbDataAdapter("Select * from FeedLibrary where ID = 'FeedSelectedID'" , Connection);
DataTable DTable = new DataTable();
DataA.Fill(DTable);
SelectedFeeddataGridView.DataSource = DTable;
}
Ve FeedSelectListBox
ait ValueMember
mülk kimliği ancak hatadır:
'System.Data tür bir işlenmeyen özel durum .OleDb.OleDbException 'System.Data.dll dosyasında oluştu.
Hatta bu sorguyu kullanın ama hala çalışmıyor:
OleDbDataAdapter DataA = new OleDbDataAdapter("Select * from FeedLibrary where ID =" FeedSelectListBox.SelectedValue , Connection);
Getlist yöntemi, kayıtların veya tabloların bir listesini almak içindir, bu nedenle "frm2.SelectedFeeddataGridView.DataSource = Dtable;" bu yöntemde. Sadece bu yöntemden veri tabanını döndürün ve veri kaynağını form yükü yöntemine atayın. Böylece, form yük olayında FeedSelectListBox için kaynakla aynı veri tabanını da kullanabilirsiniz. –
Evet, haklıyım, sadece Bağlantılarımı test etmek ve çalışıp çalışmadığını görmek için yazdım, Ama sorum, bir kategoride bulunan tüm isimlerin (başka bir alan adı değil) tümünün nasıl alınabileceğidir./Baklagil Yem kategorisi). –