Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von userid4106
Thema: Aus Thread heraus Fenster öffnen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

vielleicht stehe ich gerade etwas auf dem Schlauch aber ich habe folgendes Problem.
Ich habe eine MVVM Anwendung die relativ groß ist. Leider verarbeiten einige Methoden so viele Daten, das währenddessen die Oberfläche stillsteht.
Jetzt könnte man die Arbeit der Methoden in Threads auslagern. Könnte... Ist aber leider zu viel Aufwand. Ich habe mir also schnell ein kleines Fenster zusammengebastelt in dem nur eine Progressbar liegt. Sobald eine Mehtode aufgerufen wird, die die Oberfläche zum Stillstand bringen könnte, startet die mein Fenster und es legt sich über die Anwendung und zeigt die Progressbar an.
Problem ist, dass die Progressbar, obwohl sie auf IsIndeterminate true steht sich nicht bewegt. Die Mehtode blockiert also auch dieses Fenster. Ok, zack das ganze mit dem Fensteraufruf in eine Klasse gelegt wie in diesem Beisspiel:
MSDN: Gewusst wie: Erstellen und Beenden von Threads (C#-Programmierhandbuch)

Anschließend bekomme ich folgenden Fehler:

Fehler
Beim aufrufenden Thread muss es sich um einen STA-Thread handeln, da dies für viele Komponenten der Benutzeroberfläche erforderlich ist.

Verdammt... vielleicht sehe ich den Wald vor lauter Bäumen nicht mehr aber wie bekomme ich das ans rennen?!

Das Fenster kann von mir aus ruhig einfrieren. Aber das neue Fenster mit der Progressbar soll doch gefälligst funktionieren.

Thema: Daten dynamisch nachladen
Am im Forum: GUI: WPF und XAML

Hallo,

ich habe eine Anwendung, in der jede Menge verschachtelte Controls dargestellt werden. Diese befinden sich in einem ItemsControl der wiederum in einem ScrollViewer ist. Alles auf Basis von Daten aus einer Datenbank. Mein Problem ist, dass bei Starten der Anwendung eine gefühlte Ewigkeit vergeht, bis alles rennt.
Ich habe mittlerweile alles bis auf das nötigste runtergefiltert aber es entspricht immer noch nicht meinen Wünschen.
Nun meine Frage:

Kann man irgendwo eine Art Flag setzen, dass nur Controls richtig geladen werden, die auch gerade sichtbar sind? Sprich wenn ich in dem ScrollViewer nach unten scrolle, dass auch die anderen Controls nach und nach ihre Informationen aus der Datenbank holen.

Thema: [gelöst]ItmsControl löscht Item nicht, wenn es aus dem ItemsSource gelöscht wird
Am im Forum: GUI: WPF und XAML

Problem ist gelöst.

Das hat geholfen. Bisschen Pseudocode:

DataContext dc = new DataContext();

foreach(TABELLE1 element in dc.TABELLE1)
{
   dc.Refresh(StroeWins, element.TABELLE2);
}

Thema: WPF EF Zwei DataGrids
Am im Forum: GUI: WPF und XAML

Hallo,

ich habe zwei Entitäten die über einen Fremdschlüssel verbunden sind. Die erste Entität ist an ein DataGrid gebunden. Die zweite an das Selected Item der ersten. Diese Details werden ebenfalls in einem DataGrid angezeigt. Ich habe also nichts anderes als eine Master Detail View. Klappt soweit auch aber ich habe ein Problem. Ich habe in dem Detail DataGrid die Column "ForeignKey". Der User muss aber jedes mal wenn er in den Details eine neue Zeile erstellen möchte, einmal in die Column für den ForeignKey klicken und dann mit dem nächsten Feld weitermachen. Wenn es nach mir geht, dann würde ich diese Spalte gerne komplett ausblenden aber dann macht er mir keine neue Zeile auf wenn ich mit der Bearbeitung fertig bin:-( Ich habe auch schon versucht, die Column komplett wegzulassen. Aber ohne Erfolg:-( Wer hat eine Lösung?

Thema: [gelöst]ItmsControl löscht Item nicht, wenn es aus dem ItemsSource gelöscht wird
Am im Forum: GUI: WPF und XAML

Hallo,

ich habe ein recht ärgerliches Problem. Ich arbeite mit dem EntityFramework und binde ein ItemsControl an meine Entity. Dieses ItemsControl beinhaltet ein eigenes UserControl(Anzahl x) das wiederum ein ItemsControl beinhaltet wo auch wieder ein eigenes Control(Anzahl ebenfalls x) drin ist. Dieses verschachtelte ItemsControl bindet ebenfalls an eine Entity. Es sind also zwei Tabellen im Spiel die mit über einen Foreign Key in Verbindung miteinander stehen.

Also kleine Anmerkung: Die Anwendung ist eine Multi-Client-Anwendung. Sprich wenn ein anderer Client eine neue Zeile in seiner Anwendung in dem verschachtelten ItemsControl erstellt, dann wird automatsich das ObjectSet der anderen Clients aktualisiert und es erscheint das neue Item in dem verschachtelten ItemsControl.

Soweit funktioniert alles ABER wenn ein anderer Client eine Zeile in dem verschachtelten ItemsControl LÖSCHT, dann bekommen die anderen Clients das nicht mit. Es geht sogar soweit, dass wenn ich die betroffene Zeile, die von einem anderen Client gelöscht wurde, bearbeite, ich sehr seltsame Fehlermeldungen bekommen wie:

"Speicheranweisung für eine Aktualisieren, Einfügen oder Löschen betraf eine unerwartete Anzahl an Zeilen(0). Möglicherweise wurden einige Entitäten seit dem Laden der Entitäten geändert oder gelöscht. Aktualisieren Sie die ObjectStateManager-Einträge."

Soweit hat er ja auch recht ABER die Einträge sind aktuell. Es scheint so, als ob ein Item in dem verschachtelten ItemsControl die Verbindung zu seinem Eintrag in der Entität verlieren würde und nicht entfernt wird. Ende vom Lied ist dann, dass alle Items in dem verschachtelten ItemsControl Leichen sind.

Woran kann das liegen? Ich meine beim hinzufügen klappt ja alles wunderbar.

Thema: [gelöst] DataGridTemplateColumn - ComboBox - ItemsSource
Am im Forum: GUI: WPF und XAML

Also ich habe das jetzt ein bisschen Microsoft-like gelöst;-)
Es gibt, wenn man Expression Blend installiert hat, eine Demo namens "Contacts".
Die haben einfach das ViewModel in die App.xaml gepackt


<Contacts_ViewModels:ContactsViewModel x:Key="ContactsViewModelDataSource" d:IsDataSource="True"/>

und im MainWindow

DataContext="{Binding Source={StaticResource ContactsViewModelDataSource}}"

das ganze so eingebunden. Man hat also nur ein VM und die ComboBoxen in einer DataGridTemplateColumn können wieder an eine StaticResource binden

Thema: [gelöst] DataGridTemplateColumn - ComboBox - ItemsSource
Am im Forum: GUI: WPF und XAML

Hallo,

ich habe ein Anwendung die auf MVVM aufbaut. EntityFramework ist ebenfalls im Einsatz.
Nun habe ich ein DataGrid und in einer Column habe ich eine ComboBox. Dem Datagrid gebe ich als Tabelle eine Entitiy mit. Praktischerweise kann ich dann ja über Eigenschaften der Entity an die Tabellen kommen, die mit Fremdnschlüsseln verbunden sind. Nun möchte ich logischerweise der ComboBox als ItemsSource den Inhalt einer Verknüpften Tabelle mitgeben. Dazu mache ich einmal den hier:


        <Plan_ViewModel:Vm x:Key="StaticViewModel" />

und dann den hier:

                            <DataGridTemplateColumn Header="Maschine"
                                                    SortMemberPath="MASCHINEID">
                                <DataGridTemplateColumn.CellTemplate>
                                    <DataTemplate>
                                        <ComboBox x:Name="ComboBoxMaschine"
                                                  DisplayMemberPath="KENNZEICHEN"
                                                  IsEditable="True"
                                                  ItemsSource="{Binding Context.MASCHINE,
                                                                        Source={StaticResource StaticViewModel}"
                                                  SelectedValue="{Binding MASCHINEID,
                                                                          Mode=TwoWay,
                                                                          UpdateSourceTrigger=PropertyChanged}"
                                                  SelectedValuePath="ID" />
                                    </DataTemplate>
                                </DataGridTemplateColumn.CellTemplate>

Klappt soweit auch ganz gut ABER... ist es nicht leicht verrückt zwei mal das ViewModel zu instanzieren?! Immerhin wird ja ein Haufen an Logik ausgeführt. Ich will also weg davon. Wie könnte man das am besten lösen?? Am liebsten wäre es mir ja, wenn ich direkt in mein VM verweisen könnte. Aber da habe ich schon so einiges mit FindAncestor usw. ausprobiert aber nichts daon hat funktioniert:-(

Wie müsste das ItemsSource Binding sauber aussehen, wenn der EF ObjectContext direkt im VM liegt?

Thema: [gelöst] EventTrigger in DataGridTemplateColumn
Am im Forum: GUI: WPF und XAML


                            <DataGridTemplateColumn Header="Disponiert"
                                                    SortMemberPath="DISPONIERT">
                                <DataGridTemplateColumn.CellTemplate>
                                    <DataTemplate>
                                        <ToggleButton x:Name="FixFrei"
                                                      Background="#FF2F63FF"
                                                      BorderBrush="{x:Null}"
                                                      IsChecked="{Binding DISPONIERT,
                                                                          Mode=TwoWay,
                                                                          UpdateSourceTrigger=PropertyChanged}"
                                                      Style="{DynamicResource ToggleButtonStyleDisponiert}">
                                            <i:Interaction.Triggers>
                                                <i:EventTrigger EventName="Checked">
                                                    <i:InvokeCommandAction Command="{Binding DataContext.AuftragDisponieren,
                                                                                             RelativeSource={RelativeSource Mode=FindAncestor,
                                                                                                                            AncestorType={x:Type DataGrid}}}"
                                                                           CommandParameter="{Binding Mode=OneWay}" />
                                                </i:EventTrigger>
                                            </i:Interaction.Triggers>
                                        </ToggleButton>
                                    </DataTemplate>
                                </DataGridTemplateColumn.CellTemplate>
                            </DataGridTemplateColumn>

So klappt es. Danke

Thema: [gelöst] EventTrigger in DataGridTemplateColumn
Am im Forum: GUI: WPF und XAML

Hallo,

ich habe folgenden XAML Code:


                            <DataGridTemplateColumn Header="Disponiert"
                                                    SortMemberPath="DISPONIERT">
                                <DataGridTemplateColumn.CellTemplate>
                                    <DataTemplate>
                                        <ToggleButton x:Name="FixFrei"
                                                      Background="#FF2F63FF"
                                                      BorderBrush="{x:Null}"
                                                      Command="{Binding AuftragDisponieren,
                                                                        Mode=OneWay}"
                                                      CommandParameter="{Binding}"
                                                      IsChecked="{Binding DISPONIERT,
                                                                          Mode=TwoWay,
                                                                          UpdateSourceTrigger=PropertyChanged}"
                                                      Style="{DynamicResource ToggleButtonStyleDisponiert}">
                                            <i:Interaction.Triggers>
                                                <i:EventTrigger EventName="Checked">
                                                    <i:InvokeCommandAction Command="{Binding AuftragDisponieren,
                                                                                             Mode=OneWay}"
                                                                           CommandParameter="{Binding Mode=OneWay}" />
                                                </i:EventTrigger>
                                            </i:Interaction.Triggers>
                                        </ToggleButton>
                                    </DataTemplate>
                                </DataGridTemplateColumn.CellTemplate>
                            </DataGridTemplateColumn>


Ich möchte also, wenn mein Toogle Button "gechecked" wird eine Methode in meinem VM aufrufen. Allerdings findet die Anwendung nicht die Methode. Liegt daran, dass ich im falschen DataContext bin. Aber wie kann ich das umgehen?

P.S.:
Das Command und den dazugehörigen Parameter im Toggle Button denkt euch mal weg. Es geht nur um den Trigger. Das war nur zum Testen.

Thema: Grundlegendes zu ADO.NET
Am im Forum: Datentechnologien

MSSQL 2008 + ADO.NET

Hallo,

wir sind gerade dabei ein Multi-Client-System zu entwickeln und ich stelle mir gerade folgende Fragen.

Ich habe mal irgendwo den Satz aufgefasst, dass man mit ADO.NET quasi seine Datenbank im RAM hat. Das Buch ist von 2005 oder ein bisschen früher. Nun meine erste Frage: Unsere Datenbank wächst natürlich wie jede andere auch und ich würde gerne wissen, ob ADO.NET eigentlich ständig bei der ersten Verbindung alles aus der Datenbank lädt oder ob das nach und nach passiert? Immerhin wird so eine Datenbank recht groß und ich kann ja nicht jedes Mal die ganze Datenbank übers LAN nudeln.

Desweiteren würde ich gerne wissen, ob ich bestimmte Dinge oder so beachten muss, wenn ich ein Multi-Client-System mit ADO.NET entwickel.

Und dann noch eine weitere Frage. Ich habe in einem alten Datenbanksystem eine Tabelle x. In dieser Tabelle liegen Datensätze, die irgendwann nicht mehr aktuell sind. Diese werden dann ist die Tabelle x-Historie verschoben. Ich habe somit also zwei identische Tabellen. Nun baue ich die Datenbank gerade neu auf und würde gerne wissen, wie ihr sowas machen würdet. Sollte ich das mit den zwei Tabellen beibehalten oder doch lieber eine Tabelle nutzen aber dafür ein weiteres Feld hinzufügen das angibt, ob der Datensatz Historie ist oder nicht?

Thema: [Gelöst]DisplayMemberPath - zwei string zusammenfügen
Am im Forum: GUI: WPF und XAML

danke


                                <DataGridTemplateColumn.CellTemplate>
                                    <DataTemplate>
                                        <ComboBox x:Name="ComboBoxDisponent"
                                                  ItemsSource="{Binding DispoplanContext.Mitarbeiter,
                                                                        Source={StaticResource StaticViewModel}}"
                                                  SelectedValue="{Binding Disponent,
                                                                          Mode=TwoWay,
                                                                          UpdateSourceTrigger=PropertyChanged}"
                                                  SelectedValuePath="ID">
                                            <ComboBox.ItemTemplate>
                                                <DataTemplate>
                                                    <StackPanel Orientation="Horizontal">
                                                        <TextBlock Text="{Binding Vorname}" />
                                                        <TextBlock Text=" " />
                                                        <TextBlock Text="{Binding Nachname}" />
                                                    </StackPanel>
                                                </DataTemplate>
                                            </ComboBox.ItemTemplate>
                                        </ComboBox>
                                    </DataTemplate>
                                </DataGridTemplateColumn.CellTemplate>

Thema: [Gelöst]DisplayMemberPath - zwei string zusammenfügen
Am im Forum: GUI: WPF und XAML

Hallo,

ich habe folgende DataGridTemplateColumn:


                            <DataGridTemplateColumn Header="Disponent"
                                                    SortMemberPath="Disponent">
                                <DataGridTemplateColumn.CellTemplate>
                                    <DataTemplate>
                                        <ComboBox x:Name="ComboBoxDisponent"
                                                  DisplayMemberPath="Nachname"
                                                  ItemsSource="{Binding DispoplanContext.Mitarbeiter,
                                                                        Source={StaticResource StaticViewModel}}"
                                                  SelectedValue="{Binding Disponent,
                                                                          Mode=TwoWay,
                                                                          UpdateSourceTrigger=PropertyChanged}"
                                                  SelectedValuePath="ID" />
                                    </DataTemplate>
                                </DataGridTemplateColumn.CellTemplate>
                                <DataGridTemplateColumn.CellEditingTemplate>
                                    <DataTemplate>
                                        <ComboBox x:Name="ComboBoxDisponent"
                                                  DisplayMemberPath="Nachname"
                                                  ItemsSource="{Binding DispoplanContext.Mitarbeiter,
                                                                        Source={StaticResource StaticViewModel}}"
                                                  SelectedValue="{Binding Disponent,
                                                                          Mode=TwoWay,
                                                                          UpdateSourceTrigger=PropertyChanged}"
                                                  SelectedValuePath="ID" />
                                    </DataTemplate>
                                </DataGridTemplateColumn.CellEditingTemplate>
                            </DataGridTemplateColumn>

Jetzt würde ich aber ganz gerne beim"DisplayMemberPath="Nachname"" nicht nur den Nachnamen in der ComboBox stehen haben sondern auch den Vornamen. Wie ist das zu realsieren?
Ganz stupide sowas hier:
DisplayMemberPath="Vorname + Nachname"

Thema: DataGrid in DataGrid
Am im Forum: GUI: WPF und XAML

Du hast alles richtig verstanden;-)

Aber die Idee ist gut, Allerdings musste ich den Punkt im Moment leider nach hinten schieben:-( Ich werde aber darauf zurück kommen und dann berichten wie ich es dann umgesetzt habe;-)

Danke für die Anregung.

Thema: ADO.NET und SQLDependency
Am im Forum: Datentechnologien

Verdammt, ich habe noch mal eine Frage.
Ich habe aus dem Link von oben nun diesen Code hier:


    public static class ServiceBrokerUtility
    {
        private static List<string>     connectionStrings = new List<string>();
        private const  string           SqlDependencyCookie = "MS.SqlDependencyCookie";
        private static ObjectContext    _ctx;
        private static RefreshMode      _refreshMode;
        private static IEnumerable      _collection;
        private static INotifyRefresh   _notifyRefresh;


        public static void AutoRefresh(this ObjectContext ctx, RefreshMode refreshMode, IEnumerable collection)
        {
            var csInEf              = ctx.Connection.ConnectionString;
            var csName              = csInEf.Replace("name=", "").Trim();
            var csForEf             = ConfigurationManager.ConnectionStrings[csName].ConnectionString;
            var newConnectionString = new EntityConnectionStringBuilder(csForEf).ProviderConnectionString;
            if (!connectionStrings.Contains(newConnectionString))
            {
                connectionStrings.Add(newConnectionString);
                SqlDependency.Start(newConnectionString);
            }
            ServiceBrokerUtility._ctx = ctx;
            ServiceBrokerUtility._refreshMode = refreshMode;
            ServiceBrokerUtility._collection = collection;
            _notifyRefresh = collection as INotifyRefresh;
            AutoRefresh();
        }

        public static void AutoRefresh()
        {
            var oldCookie = CallContext.GetData(SqlDependencyCookie);
            try
            {
                var dependency = new SqlDependency();
                CallContext.SetData(SqlDependencyCookie, dependency.Id);
                dependency.OnChange += new OnChangeEventHandler(dependency_OnChange);
                _ctx.Refresh(_refreshMode, _collection);
            }
            finally
            {
                CallContext.SetData(SqlDependencyCookie, oldCookie);
            }
        }

        static void dependency_OnChange(object sender, SqlNotificationEventArgs e)
        {
            AutoRefresh();
            if (ServiceBrokerUtility._notifyRefresh != null)
            {
                Application.Current.Dispatcher.BeginInvoke((Action)(() => ServiceBrokerUtility._notifyRefresh.OnRefresh()));
            }
        }
    }

    public class AutoRefreshWrapper<T> : IEnumerable<T>, INotifyRefresh
        where T : EntityObject
    {
        private IEnumerable<T> objectSet;

        public AutoRefreshWrapper(ObjectSet<T> objectSet, RefreshMode refreshMode)
        {
            this.objectSet = objectSet;
            objectSet.Context.AutoRefresh(refreshMode, this);
        }

        public IEnumerator<T> GetEnumerator()
        {
            return objectSet.GetEnumerator();
        }

        IEnumerator IEnumerable.GetEnumerator()
        {
            return this.GetEnumerator();
        }

        public void OnRefresh()
        {
            if (this.CollectionChanged != null)
            {
                CollectionChanged(this, new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Reset));
            }
        }

        public event NotifyCollectionChangedEventHandler CollectionChanged;
    }

    public interface INotifyRefresh : INotifyCollectionChanged
    {
        void OnRefresh();
    }


            SonstigesFahrzeugstatus = new AutoRefreshWrapper<Fahrzeugstatus>(DispoplanContext.Fahrzeugstatus, RefreshMode.StoreWins);
            SonstigesFahrzeugmarke  = new AutoRefreshWrapper<Fahrzeugmarke>(DispoplanContext.Fahrzeugmarke, RefreshMode.StoreWins);
            SonstigesFahrzeugstatus = new AutoRefreshWrapper<Fahrzeugstatus>(DispoplanContext.Fahrzeugstatus, RefreshMode.StoreWins);
            SonstigesPersonenstatus = new AutoRefreshWrapper<Personenstatus>(DispoplanContext.Personenstatus, RefreshMode.StoreWins);

Funktioniert soweit auch ganz gut ABER es wird nur eine Tabelle aktualisiert. Sprich in dem Fall die "SonstigesPersonenstatus ". Also bei einer Initialisierung wie oben "übersieht" er alles bis auf das letzte. Wie muss ich den Kram nun aufbohren??

Thema: DataGrid in DataGrid
Am im Forum: GUI: WPF und XAML

Hallo,

ich habe ein DataGrid in meiner Anwendung. Zu jeder Zeile in dem DataGrid gibt es x Zeilen in einem anderen DataGrid. In der Regel werden es aber nicht mehr als 4 Zeilen werden.

Ich habe nun folgendes getan:
Ich habe in meinem DataGrid eine neue Column hinzugefügt, die als Item noch ein DataGrid hat. Sieht so aus wie auf der Abbildung und klappt so einigermaßen.

Nun zu meinem Problem. Logisch ist es ja jetzt noch jedes einzelene DataGrid zu filtern. Aber wie schaffe ich das? Wie würdet ihr vorgehen?

Eigentlich müsste ich ja nur in jedem Datansatz auf die Fahrzeug_ID filtern. Und zwar mit dem Wert der ID.

Thema: ADO.NET und SQLDependency
Am im Forum: Datentechnologien

Moin Jungs,

als ich gestern Abend im Bett lag und mich noch etwas mit dem Problem beschäftigt habe, bin ich auf das hier gestoßen:

AutoRefresh für ADO.NET
P.S.: Das funktioniert wunderbar soweit.

Allerdings kann ich irgendwie nicht beurteilen, ob das eine sauberle Lösung ist.

@CSharperUser: Du könntest ja mal ein bisschen Code posten;-)
@dN!3L: Ich hab das nur ganz kurz überflogen und hab was von LINQ2SQL gelesen. Oder macht das in dem Fall keinen Unterschied?

Thema: ADO.NET und SQLDependency
Am im Forum: Datentechnologien

SQL Server 2008 R2

Hallo,

ich habe eine WPF Anwendung und beschäftige mich seit kurzem mit ADO.NET.
Nun stellt sich mir gerade folgende Frage. Wie bekomme ich Änderungen in der Datenbank mit?!

Ich muss zusehen, dass meine Anwendung immer aktuelle Daten hat. Sowas wie einen Refresh Button kann ich den Usern nicht zutrauen da sie die Daten enorm oft ändern werden. Deswegen soll das automatisch passieren.

Ich habe bisher folgendes getan. Visual Studios auf, neues WPF Projekt(was zum testen ist) erstellt und ein ADO.NET Entity Data Model hinzugefügt.

Wenn es eine Möglichkeit gibt, wo müsste ich mich am besten einhaken und WIE?

Thema: DataGridComboBoxColumn Items
Am im Forum: GUI: WPF und XAML

Hallo,

ich beschäftige mich gerade ein bisschen mit ADO.NET und stehe vor einem kleinen Problem.
Ich habe zwei Tabellen:

Tabelle Fahrzeug
-ID(bigint)
-Kennzeichen (varchar)
-Fahrzeugtyp (bigint)

Tabelle Fahrzeugtyp
-ID(bigint)
-Typ(varchar)

Die Daten aus der Fahrzeug-Tabelle lade ich zum Bearbeiten in ein DataGrid.

DataGrid Fahrzeuge
-DataGridTextColumn ID(readonly)
-DataGridTextColumn Kennzeichen
-DataGridComboBoxColumn Fahrzeugtyp

Jetzt zu meinem Problem. Die DataGridComboBoxColumn Items sollen natürlich aus der Tabelle Fahrzeugtyp kommen. Aber da hätte ich gerne NICHT die ID drin stehen sondern den Typ.

Wie kann ich das sauber realisieren?

Thema: Beziehungen zwischen Tabellen über die ID oder über die Werte herstellen?
Am im Forum: Datentechnologien

Hallo,

wahrscheinlich etwas Low aber ich steh da gerade leicht auf dem Schlauch.
Ich habe zwei Tabellen. In der linken Tabelle gibt es ein Feld "Firma". Die rechte Tabelle ist die Tabelle "Firma". Diese Firma-Tabelle besteht aus zwei Feldern. Einer ID und dem Firmenname.
Ziel ist es, das ganze nachher in eine MVVM Anwendung zum implementieren(vielleicht ist die Anmerkung ja wichtig).

Nun meine Frage: In der linken Tabelle im Feld "Firma" gehört dort die ID oder der Firmanname rein??

EDIT:
Vielleicht ist die Info auch noch wichtig.. Also in der MVVM Anwenung soll man nachher eine Liste mit allen Mitarbeitern sehen. Das wäre dann die linke Tabelle. Wenn man nun einen einzelnen Mitarbeiter öffnet dann kann man ihn in einer ComboBox, mit den Werten aus der "Firma" Tabelle einer Firma zuordnen.

Thema: SQLDataSource - Parameter - Binding
Am im Forum: Web-Technologien

Hallo,

ich habe eine ListView und im EditItemTemplate habe ich folgende Columns:


					<td nowrap="nowrap">
						<asp:DropDownList ID="VONYARDDropDownList" runat="server" DataSourceID="PlatzDataSource" DataTextField="NAME" DataValueField="NAME"  SelectedValue='<%# Bind("PLATZ") %>' AutoPostBack="true"/>
					</td>
					<td nowrap="nowrap">
						<asp:DropDownList ID="VONSTANDORTDropDownList" runat="server" DataSourceID="SqlDataSourceVonStandort" DataTextField="NAME" DataValueField="NAME" SelectedValue='<%# Bind("STANDORT") %>'/>
						<asp:SqlDataSource ID="SqlDataSourceVonStandort" 
										   runat="server" 
										   ConnectionString="<%$ ConnectionStrings:DefaultConnection %>" 
										   ProviderName="<%$ ConnectionStrings:DefaultConnection.ProviderName %>" 
										   SelectCommand="SELECT s.NAME FROM STANDORT s,plaetze p,kunden_standort ks WHERE ks.standort=s.standort AND (ks.kunde=?) AND (p.NAME=?) AND s.STANDORT BETWEEN p.NUMMERNKREISVON AND p.NUMMERNKREISBIS">
							<SelectParameters>
								<asp:ControlParameter ControlID="ORD_USERTextBox" Name="ks.kunde" PropertyName="Text" Type="String" />
								<asp:ControlParameter ControlID="VONYARDDropDownList" Name="p.NAME" PropertyName="Text" Type="String" />
							</SelectParameters>
						</asp:SqlDataSource>
					</td>


Im Prinzip nichts anderes als zwei DropDownListen. Die erste ist allerdings auch ein einen SQLDataSource gebunden der sich nicht ändert. Also folgende Situation:

Eine Person möchte einen Datensatz bearbeiten. In der ersten DropDownList kann er sich eines der Items, die aus der Datenbank kommen, aussuchen. Als dafault Value setzte ich den Wert der Zeile. Abhängig von diesem Wert wird nun der Inhalt der zweiten DropDownList aus dem DataSource gelesen. Der default Value ist auch hier wieder der Wert der aktuellen Column. Nun zum Problem..

Wenn ich in der ersten DropDownList meine Auswahl ändere dann läuft das ganze auf einen Fehler. Die Abbildung zeigt es.

Wer kann mir helfen?

Thema: ASP.NET Control in Projekt einbinden
Am im Forum: Web-Technologien

Nope, funktioniert sehr gut;-) Man muss nur wissen wie. Danke

Thema: ASP.NET DropDownList in ListView - Bind() in C#
Am im Forum: Web-Technologien

Hab ich versucht aber die Sache ist etwas komplizierter als beschrieben. Ich habe jetzt einfach für die zweite DropDownList einen neuen SQLDataSource erstellt, den Parameter auf den Text der ersten DropDownList gebogen und dann den SQLDataSource als DataSource der zweiten DropDownBox gesetzt. Klappt wunderbar.

Thema: ASP.NET ListView - DropDownList - Default Value
Am im Forum: Web-Technologien

Jop, das hats gebracht;-) Ich weiß zwar nicht wieso aber in meiner Intellisense wurde die Eigenschaft nicht angezeigt. Stumpfes reinkopieren und rennen lassen brachte dann den Erfolg.

Thema: ASP.NET Control in Projekt einbinden
Am im Forum: Web-Technologien

Also sonderlich viel hatte ich noch nie zu tun mit ASP.NET aber jetzt wäre es mal an der Zeit zu erfahren wie ich ein ASP.NET Control in mein bestehendes Projekt genudelt bekomme. Es geht um das hier:

DateTime Control

Sorry, aber irgendwie schaffe ich das nicht:-D

Thema: ASP.NET DropDownList in ListView - Bind() in C#
Am im Forum: Web-Technologien

Hallo,

ich habe eine ListView in der ich was editieren kann. Dort sind zwei DropDownListen. Wenn in er ersten was ausgewählt wird, dann werden in der zweiten die Items aktualisiert. Wenn jetzt aber die zugrundeliegende Zeile in der zweiten DropDownList ein Item hat was NICHT vorhanden ist, dann läuft das auf einen Fehler.

Nun meine Frage: Wie kann ich Code behind(!!) das hier "SelectedValue='<%# Bind("STANDORT") %>'" umsetzen?? Was würde der Compiler sonst daraus machen??

Thema: ASP.NET ListView - DropDownList - Default Value
Am im Forum: Web-Technologien

Hallo,

ich habe eine Frage. Ich habe eine ListView in dem der Benutzer Zeilen bearbeiten kann. Nun habe ich eine DropDownList in einer Column. Die Items kommen aus einem DataSource und werden über eine View zusammengeschraubt.

Nun mein Problem: Wenn ich die Zeile nun bearbeite, dann werden zwar alle Items in die DropDownList geladen aber das default Item ist immer das erste in der Item Liste. Standart soll aber der Wert der zu bearbeitenden Zeile sein. Wie bekomme ich das hin?!?!

Achso..noch etas Code:


<asp:DropDownList ID="VONYARDDropDownList" runat="server" DataSourceID="PlatzDataSource" DataTextField="NAME" DataValueField="NAME" AutoPostBack="true" OnSelectedIndexChanged="SelectedIndexChangedVonYard" OnDataBound="VonYardListViewDataBound"/>
<%--								<asp:TextBox ID="PLATZTextBox" runat="server" Text='<%# Bind("PLATZ") %>' />
--%>							</td>


Unten habe ich das automatisch generierte mal ausgeblendet. Aber die DropDownList muss nun als default Wert "PLATZ" haben. Ich habe auch ein wenig mit dem DataBound rumgespielt aber ich schaffe es einfach nicht an den ursprünglichen Wert der Row zu kommen.

Thema: Suche Zeitleiste (Control für WPF)
Am im Forum: GUI: WPF und XAML

Hallo,

ich suche so ne Art Zeitleiste für WPF. Ziel ist es, eine grafische Aufbereitung für die Nutzung unserer Ressourcen zu entwickeln.
Nun bin ich ja ein enorm fauler Entwickler und will das Rad nicht neu erfinden und suche deshalb was forgefertigtes.

Ich möchte auf einer Zeitleiste die Auslastung einer Person z.B. darstellen. Hab mal ein Bildchen angehangen. Vielleicht weiß ja jemand, wonach ich bei Google zu suchen habe oder kann mir was zukommen lassen;-)

Thema: Suche API fürs Aktien-Trading
Am im Forum: Smalltalk

Ach, im Ernst?! Das ist mir neu. Aber sehr gut zu wissen. Gibt es da ein Stichwort?

Thema: Suche API fürs Aktien-Trading
Am im Forum: Smalltalk

Hallo,

ich hab die Tage mal mein verstaubtes Aktien Depot bei Flatex rausgekramt und bin auf die Idee gekommen, mir selber ein Trading Programm zu basteln. Leider bietet Flatex aber keine API an und deswegen wollte ich hier mal fragen wer so eine API kennt.

Danke schon mal;-)

Thema: Bedingung/Schalter für #if global im Projekt ablegen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

@xxMUROxx:
Also das ist genau das was ich gesucht habe:-)
Solltest du noch ein nettes Tool kennen, mit dem ich eine ComboBox mit vorgefertigten Werten in die VS kleben kann, dann lass es mich wissen:-P

@gfoidl: Also ich wollte nur ein Beispiel machen. Du hast schon recht, im Detail geht es um einen ConnectionString aber diese Variante lässt sich ja auch ganz schön für andere Dinge nutzen.


Danke ihr beiden.