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 Mallett
Thema: InteractionTrigger in DataGridTemplateColumn
Am im Forum: GUI: WPF und XAML

Hallo zusammen,

ich habe aktuell wieder ein Problem, welches ich nicht nachvollziehen kann. Ich nutze InteractionTriggers auch an anderen Stellen und überall funktioniert es bisher, aber hier nicht:


<DataGridTemplateColumn Header="UserState"
                        <DataGridTemplateColumn.CellTemplate>
                            <DataTemplate>
                                <ComboBox x:Name="UserStateCombobox" ItemsSource="{Binding Source={StaticResource UserStates}}"                                          
                                          Background="{Binding RelativeSource={RelativeSource Self}, Path=SelectedItem, Converter={StaticResource UserStateToColorConverter}}"
                                          SelectedItem="{Binding UserState}">
                                    <i:Interaction.Triggers>
                                        <i:EventTrigger EventName="DropDownClosed">
                                            <i:InvokeCommandAction Command="{Binding UserStateChangedCommand}" CommandParameter="{Binding ElementName=UserStateCombobox, Path=SelectedItem}" />
                                        </i:EventTrigger>
                                    </i:Interaction.Triggers>
                                </ComboBox>
                            </DataTemplate>
                        </DataGridTemplateColumn.CellTemplate>                       
                    </DataGridTemplateColumn>

Der EventTrigger wird nie ausgelöst, weder wenn ich als EventName DropDownClosed noch SelectionChanged nehme. Im Intellisense wird mir Beim Binding des Commands das UserStateChangedCommand angeboten, daher gehe ich mal davon aus, dass es nicht daran liegt, dass hier auf den falschen DataContext geschaut wird. Ich vermute eher, dass es hier eine Besonderheit gibt wegen dem <DataTemplate>. Bei anderen Spalten funktionieren alle Bindings, aber keine davon ist eine DataGridTemplateColumn.

Würde mich über eine Erklärung durch die Experten freuen.

Thema: Converter für CommandParameter in InvokeCommandAction
Am im Forum: GUI: WPF und XAML

Nein, das wars leider nicht

Thema: Converter für CommandParameter in InvokeCommandAction
Am im Forum: GUI: WPF und XAML

Hallo zusammen,

ich habe ein Problem mit dem ich nicht weiter komme und hoffe es kann mir jemand helfen.

Ich habe ein Datagrid in meinem XAML mit einem EventTrigger + InvokeCommandAction


<i:EventTrigger EventName="ColumnReordered">
                        <i:InvokeCommandAction
                            Command="{Binding HistoryColumnsReordered}"
                            CommandParameter="{Binding Columns, UpdateSourceTrigger=PropertyChanged, ElementName=historyGrid, Converter={StaticResource DatagridColumnsToDisplayIndicesConverter}}" />
</i:EventTrigger>

Mein Problem ist, wenn ich einen Breakpoint in den DatagridColumnsToDisplayIndicesConverter setze, kommt er dort nur genau einmal hin (und tut auch was er soll), anschließend wird das Command auch mit dem korrekten Parameter aufgerufen.

Wenn ich jetzt manuell im Datagrid eine Spalte verschiebe, wird zwar das Command aufgerufen, aber der übergebene Parameter ist derselbe wie beim ersten Aufruf und der Converter wird nicht mehr durchlaufen.

Kann sich darauf jemand einen Reim machen?

Ich würde erwarten, dass der Converter jedes Mal durchlaufen wird. Und ich frage mich auch, wenn er nicht durchlaufen wird, woher bekommt das Command im Viewmodel den alten Parameter-Wert immer wieder?

Hier noch der Code des Converters, auch wenn der vermutlich keine Rolle für das Problem spielt:


public class DatagridColumnsToDisplayIndicesConverter : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            if (value is Collection<DataGridColumn> columns)
            {
                List<Tuple<int, string>> columnIndices = columns.Select(column => new Tuple<int, string>(column.DisplayIndex, (string)column.Header)).ToList();
                System.Diagnostics.Debug.WriteLine("DatagricColumnsToDisplayIndicesConverter " + string.Join(",", columnIndices.Select(x => x.Item1)));
                return columnIndices;
            }

            throw new ArgumentException("Invalid binding parameters for DatagridColumnsToDisplayIndicesConverter, parameter must be a value of type Collection<DatagridColumn>!");
        }

        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            throw new Exception("Invalid call - one way only");
        }
    }

Danke schonmal

Thema: Wieso dauert ein Task.Delay(50) manchmal 900ms?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo zusammen,

ich beiße mir gerade die Zähne aus an einem kleinen Problem. Es geht um einen Handshake mit einer SPS, eine Art Heartbeat sozusagen.

Dazu habe ich einen Task der in einer Schleife while(_heartbeatActive) läuft und regelmäßig das entsprechende Bit von der SPS liest. Regelmäßig heißt dabei so viel wie am Ende steht ein await Task.Delay(50) um nicht die CPU komplett auszulasten. Wenn der Wert true ist schicke ich asynchron eine Notification ab. Der Empfänger wartet dann 500ms und setzt den Wert wieder auf false, die SPS schreibt dann nach 500ms Wartezeit den Wert wieder auf true zurück usw.

Jetzt ist es so, dass das Ganze teilweise stundenlang funktioniert und plötzlich "verliere" ich eine Wertänderung, wodurch ich dann keine Notification mehr erzeuge, niemand mehr den Wert umtoggled und das Ganze dann stehen bleibt.

Nachdem ich jetzt ewig versucht habe, das Problem zu finden, hab ich es durch Logging (kann nicht debuggen auf dem Zielsystem) soweit eingrenzen können, dass im Fehlerfall die Zeile await Task.Delay(50) plötzlich 900ms oder länger braucht.

Über irgendeine Idee, wie das sein kann, würde ich mich freuen.

Thema: Usercontrols dynamisch hinzufügen / entfernen
Am im Forum: GUI: WPF und XAML

Danke, werd ich mir mal anschauen. Ich habs zwar in der Zwischenzeit bereits mit einem Itemscontrol umgesetzt, das bindet aber an eine Collection mit Usercontrols zur Zeit. Wäre sicher schöner, wenn ich das mit der verlinkten Lösung hinbekäme.

Thema: Usercontrols dynamisch hinzufügen / entfernen
Am im Forum: GUI: WPF und XAML

Hallo zusammen,

ich habe ewig kein WPF mehr benutzt und muss jetzt eine Visualisierung basteln, allerdings bin ich ziemlich eingerostet, was WPF angeht.

Ich habe folgendes Problem:

Der Bediener kann zur Laufzeit über ein Hauptmenü (verknüpft im ViewModel über Commands) GruppenControls hinzufügen und entfernen. So weit so gut:


public class MainViewModel
{
   //...
   private async Task AddNewGroupCommandAction()
   {
       // Vorab wird über Netzwerk an eine Gegenstelle await ... gemacht
       
       // Dann lege ich mein neuen Gruppen-Usercontrol an und speichere es in einer List
       GroupViewModel vm = new GroupViewModel();
       GroupUserControl ctrl = new GroupUserControl(vm);
       
       // intern wird NotifyPropertyChanged etc. ausgeführt
       AddGroupControlToListProperty(ctrl);
   }

   //...
}

Da es maximal 8 Gruppen sein können, habe ich im MainView ein 4x2 Grid als Hauptelement. Ich würde jetzt gerne die GroupUserControls per Binding and meine GroupControlList binden, so dass die einzelnen UserControls in jeweils einer Zelle im Grid angezeigt werden, falls vorhanden. Also Element 0 der List in Zelle 1,1 usw.

<Page x:Class="Vendor.Pages.GroupView"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
      xmlns:local="clr-namespace:Vendor.Pages"
      mc:Ignorable="d" 
      d:DesignHeight="450" d:DesignWidth="800"
      d:DataContext="{d:DesignInstance Type=local:MainViewModel, IsDesignTimeCreatable=True}"
      Title="GroupView">
    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="1*" />
            <ColumnDefinition Width="1*" />
            <ColumnDefinition Width="1*" />
            <ColumnDefinition Width="1*" />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="1*" />
            <RowDefinition Height="1*" />
        </Grid.RowDefinitions>
    </Grid>
</Page>

Erste Idee wäre jetzt, jeweils ein ContentControl für jede Zelle einzufügen und dann dessen Content an jeweils einen Eintrag in der List zu binden, aber genau da weiß ich nicht, wie ich an ein bestimmtes Element der Liste binden könnte.

Ist der Ansatz an sich falsch, gibt es einen besseren Weg?

Über einen Schubser in die richtige Richtung würde ich mich freuen.
Danke schonmal.

Thema: MouseLeave Event wird nicht zuverlässig geworfen
Am im Forum: GUI: WPF und XAML

Hallo zusammen,

ich habe ein borderless Fenster, beim MouseEnter wird die Maus an ein Control innerhalb des Fensters gecaptured, beim MouseLeave soll das Capture gelöst werden.

Das funktioniert auch soweit, es sei denn, man bewegt die Maus schnell, bzw. ruckartig aus dem Fenster raus. Dann wird das MouseLeave Event nicht geworfen.

Ich habe diesen alten Thread hier im Forum gefunden:
MouseLeave Event wird nicht zuverlässig ausgelöst

Dort wird dies als allgemeines Problem beschrieben und vorgeschlagen, einen Timer zu verwenden, der regelmäßig prüft, ob die Maus noch über dem Fenster ist.

Ich habe genau das versucht, und dabei in dem Timer.Tick Handler geprüft, ob die Properties IsMouseOver und IsMouseDirectlyOver noch gesetzt sind.

Zu meiner Überraschung ändern sich aber auch die Werte dieser Properties nicht, wenn die Maus ruckartig aus dem Fenster gezogen wird. IsMouseOver bleibt dann permanent auf true, bis ich einmal außerhalb des Fensters klicke.

Daher meine Frage: Worauf könnte ich im Timer.Tick Handler noch prüfen, um festzustellen, dass die Maus nicht mehr über dem Fenster ist? Muss ich wirklich Mauskoordinaten holen und diese mit der Fensterposition vergleichen? Kann doch eigentlich nicht wahr sein, oder?

Danke schonmal.

Thema: Drag Drop auf ein ComboboxItem
Am im Forum: GUI: WPF und XAML

Hallo witte,

danke erstmal für die Antwort. Ich habs mal ausprobiert, AllowDrop="True" im popup ändert leider nichts. Auch nicht im ContentControl :(

Thema: Drag Drop auf ein ComboboxItem
Am im Forum: GUI: WPF und XAML

Ist doch drin?

Thema: Drag Drop auf ein ComboboxItem
Am im Forum: GUI: WPF und XAML

Hallo zusammen,


<ComboBox
                        x:Name="DropdownSelection"
                        AllowDrop="True"
                        DragOver="DropdownSelection_DragOver"                        
                        DataContext="{Binding ToolBar.ViewModel}"
                        Style="{StaticResource DropdownMenuStyle}">
                        <ComboBox.ItemTemplate>
                            <DataTemplate>
                                <Image
                                    x:Name="item"
                                    Width="48"
                                    Height="48"
                                    AllowDrop="True"
                                    Drop="item_Drop"
                                    HorizontalAlignment="Center"
                                    Source="{Binding ImgIcon}"
                                    Stretch="Uniform" />
                            </DataTemplate>
                        </ComboBox.ItemTemplate>
                    </ComboBox>

<Style x:Key="DropdownMenuStyle" TargetType="ComboBox">
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="ComboBox">
                            <Grid x:Name="OuterGrid">

                                <WpfControls:IconToggleButton
                                    x:Name="Expand"  
                                    IsChecked="{Binding Path=IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}"/>
                                
                                <Popup
                                    Name="Popup"
                                    AllowsTransparency="True"                                    
                                    Focusable="False"
                                    IsOpen="{TemplateBinding IsDropDownOpen}"      
                                    Placement="Bottom"
                                    PlacementTarget="{Binding ElementName=OuterGrid}">
                                    <ContentControl                                        
                                        Content="{Binding ViewModel}"    
                                        ContentTemplate="{StaticResource LayoutViewModel}"/>
                                </Popup>
                            </Grid>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>

Mein Problem an der Stelle, welches ich mir absolut nicht erklären kann:

1) DropDownSelection_DragOver -> dieses Event wird ausgelöst, wenn ich ein Objekt über den IconToggleButton ziehe.

2) Im Handler des Events setze ich IsDropDownOpen der Combobox auf true, d.h. das Popup mit den Images öffnet sich. So weit so gut.

3) Jetzt würde ich gerne über item_Drop mitbekommen, wenn das gezogene Objekt über einem der Items (Images) gedroppt wird. Das funktioniert aber nicht. Beim Drop über einem Bild wird kein Event ausgelöst.

Hat jemand eine Erklärung dafür?

Danke

Thema: Zugriff auf C#-Anwendung / Access-Datei im Intranet beschleunigen
Am im Forum: Netzwerktechnologien

Vielleicht würde es helfen, eine Serveranwendung zu entwickeln, die irgendwo am Standort wo die Access-Datei liegt, läuft.

Die Clients verbinden sich dann zu dieser, und nur die Serveranwendung macht Zugriffe auf die Access-Datei und gibt die Ergebnisse an die Clients zurück.

Dadurch würdest Du den Remote-Dateizugriff sparen und hättest dann nur noch den normalen Kommunikations-Traffic zwischen Client und Serveranwendung, der wohl relativ flüssig laufen dürfte, so lange Du keine riesigen Datenmengen aus der Access-Datei übertragen musst.

Letztlich hängt die Verzögerung aber immer in erster Linie davon ab, wie groß die Datenmenge ist, da hilft dann nur eine bessere Leitung oder eine Verkleinerung der Datenmenge. Um Letzteres zu erreichen, könnte Deine Serveranwendung die Daten nach dem Auslesen aus Access ggf. noch in geeigneter Form komprimieren, bevor sie an den RemoteClient weitergeleitet werden.

Thema: Reihenfolge mehrerer Topmost-Windows festlegen?
Am im Forum: GUI: WPF und XAML

Ich kann das jetzt nicht weiter ausführen, aber die Lupen nutzen die IPL um medizinische Aufnahmen zu vergrößern. Da komme ich mit Shader-Effekten leider nicht weit.

Das Thema kann aber zu, ich habe es selbst gelöst, indem ich einen ZOrderManager geschrieben habe, bei dem sich alle relevanten Windows registrieren, und der dann dafür sorgt, dass zu jedem Zeitpunkt die korrekten Windows als Topmost markiert werden.

Ich hätte zwar erwartet, dass WPF da einen einfacheren Weg anbietet (im alten C++ Code ist das ein einfaches integer property), aber seis drum, es funktioniert zumindest jetzt wie es soll.

Thema: Reihenfolge mehrerer Topmost-Windows festlegen?
Am im Forum: GUI: WPF und XAML

Naja, ein kleines Fenster, welches einen Ausschnitt aus dem darunter liegenden Fenster vergrößert darstellt halt. Eine Lupe halt.

Spielt es eine Rolle, wofür ich es brauche?

Thema: Reihenfolge mehrerer Topmost-Windows festlegen?
Am im Forum: GUI: WPF und XAML

Da magst Du Recht haben, die Herangehensweise ist allerdings vorgegeben, da die Anwendung genau das können muss, was eine alte C++ Anwendung auch macht. Es handelt sich dabei um eine Art Bildschirmlupe, wobei sich die zu vergrößernden Ausschnitte auf verschiedenen, sich situationsabhängig überlappenden Windows befinden.

Die Lupenfenster müssen immer über dem Fenster mit den Originaldaten liegen, diese Fenster müssen aber auch immer übereinander liegen.

Ich hab also bspw. ein Fenster mit Originaldaten, darüber x Lupenfenster, darüber ein weiteres Fenster mit Originaldaten, darüber wieder x Lupenfenster usw.

Thema: Reihenfolge mehrerer Topmost-Windows festlegen?
Am im Forum: GUI: WPF und XAML

Weitere Anmerkung: Ich kann aus A auch kein Popup von B machen, da es zum Einen auch möglich sein muss, A aus B "heraus" zu bewegen und zum Anderen A auch an anderer Stelle noch benutzt wird.

Thema: Reihenfolge mehrerer Topmost-Windows festlegen?
Am im Forum: GUI: WPF und XAML

Hallo,

ich habe zwei Windows, die Topmost=true gesetzt haben, dabei ist es notwendig, dass eines der Windows (Window A) immer vor dem anderen (Window B) liegt und beide Windows vor allen anderen Windows.

Ist es irgendwie möglich, den ersten Teil der Bedingung umzusetzen?
Derzeit ist es halt so, dass Window A hinter Window B rutscht, sobald man in B rein klickt, genau das soll nicht der Fall sein. Es darf aber auch nicht möglich sein, dass weitere Windows z.B. über die Taskleiste vor Window B rutschen, daher kann ich bei B Topmost auch nicht weg nehmen.

Thema: Setzen von Kompatibilitätseinstellungen der Anwendungen in C#
Am im Forum: Rund um die Programmierung

@Abt

Die genannte Einstellung befindet sich im Reiter Kompatibilität unter Einstellungen. Insofern denke ich schon, dass es ein Teil der Kompatibilitäts-Einstellungen ist.

Windows 10 ja, .NET Framework 4.7 nein.

Thema: Setzen von Kompatibilitätseinstellungen der Anwendungen in C#
Am im Forum: Rund um die Programmierung

Hallo zusammen,

gibt es einen Weg in C# aus dem Code heraus die Kompatibilitätseinstellungen der eigenen Anwendung vorzudefinieren?

Ich würde gerne die Option "Hohe DPI-Einstellungen ändern -> Hohe DPI Skalierung überschreiben" aktivieren und den Wert "Anwendung" setzen.

Ich hab bisher nur Beispiele über Manifest-Datei gefunden, aber diese haben offenbar keinen Einfluss auf die Kompatibilitätseinstellungen meiner .exe

Danke.

Thema: Beim Verschieben von Fenster zwischen 2 Monitoren automatische Größenänderung verhindern?
Am im Forum: GUI: WPF und XAML

Ich habs selbst gefunden: In den Kompatibilitätseinstellungen der .exe auf "hohe DPI-Einstellungen ändern" klicken und dort den Haken bei "hohe DPI-Skalierung überschreiben" und im Dropdown "Anwendung" auswählen.

Wenn ich jetzt noch herausfinde, wie das mittels Code funktioniert, wäre ich happy.

Danke.

Thema: Beim Verschieben von Fenster zwischen 2 Monitoren automatische Größenänderung verhindern?
Am im Forum: GUI: WPF und XAML

Nein, eigentlich will ich nur, dass nicht umskaliert wird, wenn ich mein Fenster von einem Monitor auf den anderen schiebe.

Falls das nicht möglich sein sollte, gibt es evtl. ein Event, welches ich abfangen könnte, wenn Windows mein Fenster massakriert?

Thema: Beim Verschieben von Fenster zwischen 2 Monitoren automatische Größenänderung verhindern?
Am im Forum: GUI: WPF und XAML

Hallo,

ich habe mehrere Monitore, einer hat Skalierung 100%, die anderen 125%
Wenn ich jetzt ein WPF-Fenster, welches sich standardmäßig auf Monitor 2 (125%) öffnet, von Monitor 2 in Richtung Monitor 1 verschiebe, dann wird, sobald das Fenster zu 50% auf Monitor 1 liegt, automatisch die Größe des Fensters angepasst (also auch von dem Teil, der noch auf Monitor 2 liegt).

Kann man das irgendwie verhindern?

Bisher habe ich schon mit System.Windows.Media.DisableDPIAwareness rumgespielt, aber leider ohne Erfolg.

Danke.

Thema: UI per Konfigurator generieren lassen
Am im Forum: GUI: Windows-Forms

Zitat von wisher78
Mein Projektleiter stellt sich eine Anwendung vor, deren Oberfläche so generisch ist, dass man sie mit einem Konfigurator mehr oder weniger einfach und schnell aus User-Sicht selbst zusammen stellen kann.

Gib ihm doch den Visual Studio Form Designer, Problem gelöst.

Thema: Hash für Gesichtserkennung, aber ein Hash der die Ähnlichkeit repräsentiert
Am im Forum: Grafik und Sound

Zitat von Ballom
Ich habe eine neue Idee!

Bei einer fixen Kamera könnte man das Bild (ohne Personen) speichern und dann immer das neue Frame mit dem Standbild vergleichen.

Auf Pixel-Ebene kannst Du das aber voll vergessen. Selbst wenn Du zwei Mal hintereinander dieselbe Szene aufnimmst werden die Pixel-Werte niemals alle identisch sein, bei keiner Kamera der Welt.

Der Ansatz, hier Pixel-Werte zu vergleichen, ist einfach grundlegend falsch. Die Vorposter hier haben Dir schon den Tipp gegeben, mit Abstandsverhältnissen zu arbeiten, das ist ein weit besserer Ansatz um mal anzufangen. Einfach wird es sicher nicht, um das Einlesen in die bestehenden Algorithmen wirst Du nicht drum herum kommen.

Thema: COM-Interop-Problem: Programm "hängt" auf einem anderen Rechner
Am im Forum: Rund um die Programmierung

Vielleicht die falsche Dll für Deinen Kartenleser?

Zitat SCM-Webseite:

Verwenden Sie die Datei c:\windows\system32\CTPCSCCD.dll bei den Kartenlesern Cloud x700 und die Datei c:\windows\system32\CTPCSC31.dll bei den Kartenlesern SCR3xxx

Sind die betreffenden dlls alle registriert?

Vielleicht Marshalling-Probleme zwischen 32bit und 64bit Systemen?

Thema: Typisiertes Dataset ableiten
Am im Forum: Datentechnologien

Gibt es in C# (Visual Studio 2013) einen vernünftigen, gangbaren Weg, eine Ableitung eines typisierten Dataset zu erzeugen, so dass ich im abgeleiteten Dataset auch eine Designer-Ansicht hinbekomme?

Danke

Thema: Chat: Speichern von unzustellbaren Nachrichten auf dem Server
Am im Forum: Netzwerktechnologien

Die einzige Schwierigkeit wird wohl sein zu erkennen, wer sich da wieder verbindet. Wie kannst Du zuordnen, dass eine eingehende Verbindung jetzt wieder Client A ist, der vorher die Verbindung verloren hat?

Thema: [GELÖST] Server schließt sich immer nach getrennter Verbindung
Am im Forum: Netzwerktechnologien

Statt for(;;) würde ich eher sowas wie while(!shutdown) nehmen, dann kannst du den Server auch gezielt beenden indem du das shutdown flag setzt. Ansonsten passts doch. Der ganze Kram in if (mem.Length > 0) geht auch einfacher, wenn Du einen TcpListener / TcpClient und dazu StreamReader/StreamWriter verwendest.

Thema: Datenbank-datei lässt sich nicht erstellen
Am im Forum: Datentechnologien

Überleg dir doch erstmal, was Du überhaupt willst. MySql? MS-SQL? Sind zwei verschiedene Dinge. Wenn Du eine MySQL Datenbank ansprechen willst, brauchst Du keinen MS SQL Server (die Express-Version ist frei).

Es ist halt manchmal doch etwas schwieriger als sich mal eben "irgendein Tutorial" anzuschauen, und schwupps, schon kann man mit Datenbanken umgehen. Vielleicht mal an eine Schulung / Fortbildung gedacht?

Thema: DLL nicht gefunden, kann jedoch konstruiert werden
Am im Forum: Grundlagen von C#

Zitat
Jetzt habe ich eine weitere Klasse und dort initialisiere ich eine Instanz von FTP. Dann bekomme ich folgenden Fehler:

Befindet sich diese weitere Klasse im selben Projekt wie die Klasse FTP? Falls nicht, musst Du sicherstellen, dass auch die "externe DLL" vom Projekt der weiteren Klasse aus verfügbar ist.

Leider insgesamt wenig Infos, aber da du von einer externen Dll sprichst - sicher, dass Du sie nicht registrieren musst? (Stichwort: regsvr32)

Thema: Textchanged event einer Textbox, die aus einem IntPtr erzeugt wird
Am im Forum: GUI: Windows-Forms

Hallo STF-DIR

schau Dir mal den System.Windows.Automation namespace an. Das dürfte Dir evtl. weiter helfen.