ja soweit war ich auch das ich im event Resize etwas machen muss.
Jedoch kann ich in diesem event nicht abprüfen wann meine Form minimiert wurde:
Man kann nur abfragen wann die Form maximiert wurde oder normal ist:
FormWindowState.Maximized und FormWindowState.Normal.
ok geht doch nicht-das ist nur ein Sorting und kein Groupby was man da als 2.Parameter mitgeben kann.
Scheint also gar nicht mit einem Select -Statement eines DataTables zu gehen...
ok bloede Frage:
kann man als 2.Parameter in der Select-Methode mitgeben:
myRows= clientData.Tables["ClientItemList"].Select("LastName='" + textBoxName.Text + "'","LastName DESC");DataSet clientData = null;
aber mein Problem ist dann immer noch die Eigenschaft "DisplayMember" und "valueMember" richtig zu setzen, wenn man als DataSource ein DataRow-Array an die ListBox übergeben hat.
Hallo,
ich erstelle eine Compact Framework Anwendung.Da in Windows-Mobile-Forms ja der Standard-Button zum Schließen einer Form ein Minimize Button ist, moechte ich im Event des minimierens eines Fensters etwas asuführen.
Es gibt aber lediglich die FormWindowState.Maximized und FormWindowState.Normal.
Hat jemand eine Idee wie ich auf den Event der minimierens komme?
Cordoba
ja das hatte ich auch schon überlegt.Ich weiß bloß nicht wie ich das mache.Meine Idee wäre gewesen:
DataSet clientData = null;
myRows= clientData.Tables["ClientItemList"].Select("groupby LastName='" + textBoxName.Text + "'");
geht denn sowas in einem Select-Statement eines DataSet?
Hallo,
ich habe ein Array von DataRows : DataRow[] myRows;
In diesen Rows sind die Ergebnisse einer Select-Abfrage einer DataTable.
Nun möchte ich dieses Ergebnis in einer ListBox oder ComboBox (haben bei meinem Problem die gleichen Eigenschaften) darstellen.
Ich möchte folgendes in der ListBox anzeigen: alle Datensätze die in dem Feld ("FirstName" und "LastName") einmalig sind-also keine doppelten anzeigen und als Anzeige den Vor-und Nachnamen in der ListBox sehen.
Bis jetzt habe ich das so realisert:
myListBox.DataSource = myRows;
myListBox.DisplayMember = "LastName";
myListBox.ValueMember = "CardID"; //CardID ist der eindeutige Schlüssel über die Personen
jetzt folgendes Problem -> in der ListBox steht nur pro DatenSatz "System.Data.DataRow"
->es werden auch doppelte Datensätze angezeigt (also mehr "System.Data.DataRow"-Einträge als es Personen gibt)
wie kann man das ganze beheben?
Irgendwie gibt es die Eigenschaft BindingContext -ich weiß aber nicht wie man sie benutzt.
Vielen Danke für eure Hilfe
Cordoba
die ereignisse auszuhängen bringt nix.
Es kommt eine Fehlermeldung aber der Speicher wird weiterhin belegt.
Ich muss dann das Programm händisch über "ausgeführte Programme" beenden.
Ich beende das ganze bis jetzt so:
private void Form2_Closed(object sender, EventArgs e)
{
RFIDDriver.PowerDown();
RFIDDriver.OnAsyncTagID -= new AsyncTagID(RFIDDriver_OnAsyncTagID);
RFIDDriver.OnDeviceActivated -= new DeviceActivated(RFIDDriver_OnDeviceActivated);
this.Close();
}
ja ich habe festgestellt, dass nur speicher beim beenden belegt wird, wenn ich einer der Forms war wo eine Schnittstelle angesprochen wird.
Wie hänge ich denn die Events aus wenn ich die Form schließe?
es werden auch verschiedene Geräte /schnittstellen mit den einzelnen Forms angesprochen.
Es scheint wohl daran zu liegen, dass die instanziierung dieser DLL's nicht vollständig aufgehoben wird:
namespace MiniCard
{
public partial class Form2: Form
{
private static IDBlueNET rfidDriver = null;
public Form2(DataSet ClientData)
{
RFIDDriver.OnAsyncTagID += new syncTagID(RFIDDriver_OnAsyncTagID);
RFIDDriver.OnDeviceActivated += new DeviceActivated(RFIDDriver_OnDeviceActivated);
}
wenn diese Form aufgerufen wird ,und das entsprechende Gerät nicht angeschlossen ist wird der Speicher mit 4MB belegt und nie wieder freigegeben!
Keine Ahnung wie das zu fixen ist-wahscheinlich kann man es dann nur betreiben wenn ein Gerät angeschlossen ist!