Laden...

Forenbeiträge von BerndFfm Ingesamt 3.825 Beiträge

13.05.2020 - 11:59 Uhr

Es gibt eine gute Klasse für schnelles Kopieren :

QuickIO.NET - Performante Dateioperationen

Ich benutze die schon lange und geht auch async mit Progressbar.

Grüße Bernd

26.09.2019 - 14:33 Uhr

Ich habe mich mit XML nie anfreunden können. Inzwischen mache ich alles mit JSON, da kann man komplette Strukturen mit ein paar Befehlen speichern und laden ohne sich um die Dateistruktur kümmern zu müssen. Die Dateistruktur ist in einer Klasse definiert.

Eine Klasse als Beispiel :


public class QuasarFiles
{
	public string filename { get; set; }
	public string directory { get; set; }
	public long size { get; set; }
	public string checksum { get; set; }
	public DateTime created { get; set; }
	public DateTime modified { get; set; }
	public bool download { get; set; }
	public bool overwrite { get; set; }
}

JSON schreiben :


List<QuasarFiles> files = new List<QuasarFiles>();
files.Add(new QuasarFiles()
{
	filename = fn,
	directory = verz,
	size = length
});
string json = JsonConvert.SerializeObject(files, Newtonsoft.Json.Formatting.Indented);
json = json.Replace("\r\n\r\n", "\r\n");
File.WriteAllText(@"...\files.json", json);

JSON lesen :


string json = File.ReadAllText(@"...\files.json");
List<QuasarFiles> files = JsonConvert.DeserializeObject<List<QuasarFiles>>(json);
foreach (QuasarFiles fil in files)
{ ... }

Man braucht die Newtonsoft.Json.dll dazu. Kann man mit NuGet installieren.

Grüße Bernd

18.09.2018 - 10:29 Uhr

Der Eigenbau Player wurde am Samstag mit 2 Kauf-Geräten verglichen.

Insbesondere das dynamische HDR.

Mein Bericht vom HDR Shootout : http://download.seven-c.de/files/uhd/hdrshootout2/

Grüße Bernd

13.09.2018 - 12:52 Uhr

Interessante Themen !

Wer fährt aus Rhein/Main heute nach Stuttgart ?

Oder wer will sich die Sessions nächste Woche abends im Rhein/Main Gebiet anschauen ?

Grüße Bernd

13.09.2018 - 09:34 Uhr

Im Visual Studio 2017 gibt es das Installer Projekt immer noch, es muss wie folgt installiert werden :

Extras / Extensions und Update...

Dann Visual Studio Marketplace wählen und rechts im Suchfeld "Installer" eingeben.

Dann "Microsoft Visual Studio 2017 Installer Projects" auswählen und herunterladen.

Ich benutze das Installer Projekt um meine Software von DVD oder aus dem Internet zu installieren.

Dazu benutze ich es um eine App aus dem Microsoft Store zu installieren bzw. das ist so geplant.

Grüße Bernd

24.05.2018 - 09:48 Uhr

Einfach den Bericht größer machen. Wenn er dann umbricht auf eine zweite Seite ist das Papierformat zu klein oder der Rand zu groß.

Der Report Builder ist nicht toll wenn man Berichte genau an ein A4 Papier anpassen will.

Grüße Bernd

23.05.2018 - 12:06 Uhr

Das war auch der Grund warum wir mit Windows Forms entwickeln.

Man kann aber inzwischen seit Windows Server 2008R2 die Leistung des Terminal Servers durch Graphikkarten Hardware erhöhen, nennt sich RemoteFX.

Die Graphikkarte muss das unterstützen.

Grüße Bernd

09.05.2018 - 11:28 Uhr

AutoScaleMode auf 'None' setzen, dann wird die Grüße nicht vom Framework verändert.

Grüße Bernd

07.05.2018 - 10:46 Uhr

Der Text im Button wird erst geändert wenn die Methode beendet wird.

Was kommt denn noch bei "......noch mehr code......." ?

Lass das mal alles weg was danach kommt.

Grüße Bernd

26.04.2018 - 14:05 Uhr

PDF's anzeigen lassen kann man mit Adobe DLL, PDFSharp, MoonPDF und anderen Tools.

Die Anzeige ist aber sehr langsam, man müsste das mal testen.

Ich werde MoonPDF als PDF Viewer verwenden. Der Autor von MoonPDF ist übrigens hier im Forum aktiv.

Grüße Bernd

26.04.2018 - 13:31 Uhr

Für PDF gibt es keine Preview. Außer das Icon für PDF selber :

https://image.flaticon.com/icons/svg/337/337946.svg

Um es als Preview anzuzeigen muss man die PDF in Grafikdateien wandeln z.B. mit Ghostscript :


string prog = @"\Program Files\gs\gs9.23\bin\gswin64c.exe";
string args = "-sOutputFile='" + zdat + "' -sDEVICE=jpeg -dBATCH -dNOPAUSE -r16 -q '" + qdat + "'";

Grüße Bernd

20.04.2018 - 13:30 Uhr

Das Entity Framework für AS400 ist teuer : https://stackoverflow.com/questions/4546120/is-it-possible-to-use-entity-framework-with-a-db2-iseries-as-400

Hier ist die IBM Lizenz mit 12.000 Dollar angegeben.

Abhilfe : Einen Datenbank Provider für das Entity Framework selber schreiben !

ADO.NET wird natürlich heute noch genutzt, aber der untypisierte Umgang mit DataTable und Rows ist umständlich und fehlerbehaftet.

Ein Micro ORM wie Dapper kann ich auch empfehlen.

ODBC ist die langsamste und umständlichste Methode um auf eine Datenbank zuzugreifen. '

Grüße Bernd

20.04.2018 - 09:03 Uhr

Du hast oben SubItems hinzugefügt, das sind Spalten im ListView.

Wenn Du Zeilen hinzufügen willst dann Items hinzufügen. Und vor dem Füllen das Löschen der alten Zeilen nicht vergessen !

Wenn Du nur eine Spalte hast kannst Du mit Items.Add(string) arbeiten. Dann geht es kürzer als Dein Code :

public void ReadFolder()
{
    listView1.Items.Clear();
    foreach (string fil in Directory.GetFiles(Application.StartupPath, "*.*", SearchOption.TopDirectoryOnly))
    {
         listView1.Items.Add(fil);
    }
}

Wenn der Dateiname ohne Pfad angezeigt werden soll dann Path.GetFileName(fil) benutzen.

Grüße Bernd

16.04.2018 - 14:21 Uhr
foreach (Form frm in Application.OpenForms) ...

Die OpenForms Eigenschaft stellt eine schreibgeschützte Auflistung von Formularen, die der Anwendung zugeordnet sind.

Diese durchgehen und das Formular in den Vordergrund bringen was Du brauchst.

Grüße Bernd

16.04.2018 - 13:05 Uhr

Wie sieht dann eine Fehlermeldung aus ?

Bei mir so mit Debuginfo "Nur PDB" und Code Optimieren = Ja :

Exception : Die Datei "sadad" konnte nicht gefunden werden.
Exception Stack : bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
                  bei QUASAR3.Mainmenu.MainMenu_Load(Object sender, EventArgs e) in .\MainMenu.cs:Zeile 354.

Grüße Bernd

16.04.2018 - 12:46 Uhr

Hallo Wax,

es ist oft sinnvoll, die PDB Dateien mit an den Kunden auszuliefern.

Wenn sie nur Zeilennummern und keinen Source Code enthalten sollen dann kann man in den Eigenschaften des Projekts einstellen :

Build / Konfiguration : Release / Erweitert

Debuginformation : Nur PDB.

Dann bekommt man bei Exceptions im Stack Trace die Zeilennummer und den Dateinamen zurück wo die Exception aufgetreten, das erleichert die Fehlersuche ungemein. Es ist allerdings der Pfad Deiner Entwicklungsumgebung dabei, das ist OK so.

Grüße Bernd

05.03.2018 - 12:39 Uhr

Hallo Timmi,

Du verlässt wie schon gesagt beim ersten Schleifendurchlauf deine Routine. Du musst erst alle Schleifen durchlaufen wenn nichts gefunden.

Wenn Du im ersten Element findest [0,0] dann kannst Du das nicht unterscheiden von nichts gefunden. In diesem Fall würde ich [-1,-1] zurückgeben.

Könnte also so aussehen :

private int[] Suchen(string suchbegriff)
{
    for (int i = 0; i < csvText.GetLength(0); i++)
    {
        for (int j = 0; j < csvText.GetLength(1); j++)
        {
            if (csvText[i][j] == suchbegriff)
            {
                return new int[] {i, j};
            }
        }
    }
    return new int[] {-1, -1};
}

Grüße Bernd

22.02.2018 - 11:49 Uhr

Fange am besten mit dem Microsoft SQL Server an. Da gibt es die meiste Unterstützung.

Und SQL Server Express Edition ist auch kostenlos.

Wenn Du Programme schreibst die Daten speichern die Du weitergeben willst kannst Du LocalDB (lokale Version des SQL Servers) oder SQLite benutzen.

SQL Compact von Microsoft wird leider nicht weiterentwickelt.

Grüße Bernd

20.02.2018 - 14:41 Uhr

In der Entwicklungsumgebung kannst Du auch Argumente zum Testen angeben :

Projekt / ...-Eigenschaften / Debuggen / Befehlszeilenargumente

Grüße Bernd

29.01.2018 - 14:33 Uhr

Dazu eine kleine Anekdote :

Meine erste Batchdatei, die ich geschrieben habe, hiess 'move.bat'. Sie hat eine Datei in ein anderes Verzeichnis verschoben :

@echo off
copy %1 %2\*.*
del %1

Nachteil : Wenn es das Zielverzeichnis nicht gab wurde die Datei nur gelöscht.

Geschrieben auf einem Victor Sirius mit MS-DOS 2.11.

Grüße Bernd

16.01.2018 - 15:02 Uhr

In Windows 10 wurden viele Funktionen wegrationalisiert, die man aber ab und zu braucht. Muss man dann wieder anlegen :

Neu / Verknüpfung anlegen / cmd.exe : Kommandozeile

Neu / Verknüpfung anlegen / control.exe : Systemsteuerung

Lege ich nach Windows Installation immer gleich an. Dazu noch "Dieser PC" und "Autostart".

Grüße Bernd

05.01.2018 - 12:21 Uhr

Hier ist noch eine Ergänzung aus dem oben genannten Thread, steht bei mir aber weit unten :

Just a brief extra: in different circumstances (e.g. if you're converting a double, &c to an Int32) you might also want to worry about rounding when choosing between these two. Convert.Int32 will use banker's rounding (MSDN); (int) will just truncate to an integer.

Grüße Bernd

29.12.2017 - 10:54 Uhr

Ergänzend noch zur Archivierung: Gerade DB-Sicherungen sind von Natur aus sehr gut komprimierbar

SQL Server kann ab Standard Edition eine Datensicherung auch selbst komprimieren. Das gibt es seit dem SQL Server 2008.

BACKUP DATABASE [...] 
TO  DISK = '...' 
WITH COMPRESSION
GO

Grüße Bernd

22.12.2017 - 14:47 Uhr

Hab jetzt auf Version 14 der Office PIA's aktualisiert.

Jetzt läuft sowohl Office als auch die SAP Crystal Reports Runtime.

Mit den PIA's wird Office 2010 bis 2016 unterstützt. Wer was älteres hat ist selber Schuld !

Euch schöne Weihnachten !

Grüße Bernd

22.12.2017 - 14:45 Uhr

Bei mir funktioniert der Anchor bei Winforms auch nicht immer richtig.

Abhilfe : Selber resizen !

Grüße Bernd

15.12.2017 - 14:10 Uhr

Hallo,

nach dem Windows 10 Fall Creators Update hat mein Rechner leider nur einen Bluescreen gezeigt und ich habe wieder einmal alles neu installiert. Dabei habe ich auch die neueste Entwicklungsumgebung von SAP Crystal Reports Version 13.0.21 installiert.

Jetzt laufen die Listen nicht mehr, die im Programm enthalten sind. Abhilfe laut SAP ist folgende app.config :

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
  </startup>
</configuration>

Die Listen laufen jetzt, aber die Office-Funktionen, die eine alte Microsoft.Office.Interop.Word benutzen, funktionieren nicht mehr.
Diese DLL's waren übrigens ein Tipp von Rainbird (wer ihn noch kennt).
Die Microsoft Office DLL's laufen aber nur mit dieser app.config :

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup><supportedRuntime version="v2.0.50727" /></startup>
</configuration>

Da ich nicht weiß welche Word-Version die Anwender einsetzen würde ich gerne bei den alten DLL's bleiben.

Die Anwendung läuft mit Framework 3.5 als 32-Bit Konfiguration.

Welche Möglichkeiten gibt es sowohl 2.0 als auch 4.0 DLL's in der Anwendung zu benutzen ?

Beide Runtime Versionen in der app.config anzugeben wie unter "Mixed Mode Assembly" beschrieben klappt leider nicht.

Grüße Bernd

04.12.2017 - 09:08 Uhr

Das Installer-Projekt, das eine MSI erstellt und diese auch auf einem Netzwerklaufwerk installieren kann, wird hiermit installiert :

https://marketplace.visualstudio.com/items?itemName=VisualStudioProductTeam.MicrosoftVisualStudio2017InstallerProjects

Ob es auch mit der Community Version funktioniert musst Du testen.

Hier habe ich einige Installer-Programme getestet : Auswahl eines Setup-Programmes für die eigene Applikation

Beachte den Hinweis am Ende mit den "Advertised Shortcuts".

Grüße Bernd

29.11.2017 - 13:21 Uhr

Das dynamische HDR klappt gut !

Leider ist Windows 10 nicht so das perfekte System für einen HTPC. Ich habe 2 Monitore und das bringt ständig Schwierigkeiten : KODI startet auf dem falschen Bildschirm, die Auflösung, Frequenz, Signallevel oder Bitanzahl ändert sich ständig, KODI verliert den Fokus , die Apps starten in der falschen Größe ...

Man muss immer viel mit Tastatur und Maus zwischendrin rumwurschteln. Ausserdem muss man die Bildschirm-Modi ständig kontrollieren, Also nix fürs Laien.

Ich will jetzt ein Programm schreiben was ständig den Zustand überwacht und ggf. korrigiert.

Es gibt 3 Modi : Kino-Mode nur der Beamer, PC-Mode : Nur der Monitor, Kombi-Mode : Beamer und Monitor an.
Es wird Auflösung, Bittiefe, Frequenz und Signallevel kontrolliert und ggf. angepasst.
KODI bekommt den Fokus wenn es den Fokus verloren hat.
Hinweis ; Wenn KODI den Fokus verliert sieht man es noch, aber die Fernbedienung und Tastatursteuerung geht nicht mehr.

Für die Einstellungen der nVidia Graphikkarte brauche ich Zugriff über die nVidia API. Die Wrapper, die ich gefunden habe, stellen leider nur einen kleinen Teil der möglichen Kommandos zur Verfügung. Dann gehe ich mal selbst daran einen Wrapper zu schreiben.

Oder hat das schon mal jemand gemacht ? Ich benötige den Zugriff z.B. auf
"NvU32 _NV_HDMI_SUPPORT_INFO_V2::isMonAdobeRGBCapable".

Grüße Bernd

17.11.2017 - 09:24 Uhr

Neues Projekt ; Dynamisches HDR

Das High Dynamic Range (HDR) der Ultra HD Bluray ermöglicht die Darstellung von größeren Helligkeiten, ungefähr 10 mal heller als bei der Bluray. Leider ist jeder Film anders abgemischt, die Maximalhelligkeit ist manchmal 600 nits, 1000 nits oder 4000 nits. Die Ultra HD Norm geht bis 10.000 nits, das kann aber noch kein Wiedergabegerät darstellen.

Ist die Helligkeitskurve nun falsch an den Film angepasst dann saufen dunkle Stellen ab, sie sind alle schwarz. Helle Stellen können übersteuern, so ist eine helle Sonne ein großer weißer Fleck wo eigentlich noch Abstufungen sichtbar sind.

Bisher benutze ich die Gamma D Kurve des JVC Projektors oder ich erstelle eigene Gamma Kurven mit dem ARVE Tool die an meine Leinwand und an den jeweiligen Film angepasst sind.

Die Industrie verspricht uns für die Zukunft dynamische HDR-Verfahren, die die Helligkeitskurve bei jedem Bild an das Wiedergabegerät anpassen. Diese Verfahren heißen Dolby Vision oder HDR10+.

MadVR kann inzwischen auch dynamisches HDR : Jedes Bild wird einzeln analysiert und es wird eine Helligkeitskurve erstellt, die sowohl die dunklen Stellen detailiert darstellt als auch die Highlights. Diese werden nicht übersteuert übersteuert sondern so komprimiert dass alle Helligkeitsverläufe dargestellt werden.

Voraussetzung : madVR und eine schnelle Graphikkarte. Das Wiedergabegerät braucht nicht mal HDR zu können, madVR rechnet das auf SDR um.

Meine Einstellungen in madVR :
devices / JVC DLA-X7000 / calibration :
(*) this display is already calibrated
gamut : BT.2020
gamma : pure power curve / 2.20

devices / JVC DLA-X7000 / color&gamma :
Alle Werte 0
[ ] enable gamma processing

devices / JVC DLA-X7000 / hdr :
(*) convert HDR content to SDR using pixel shader math
display's peak nits : 400
[X] preserve... (alle Kästchen anhaken)
fix to bright ... : 50% liminance reduction and 50% saturation
strength : 100%

Meine Einstellungen im JVC DLA-X7000 :
Farb Profil : BT2020
Farbtemperatur : 6500K
Gamma : Normal (2.2)

Die ersten Tests sehen grandios aus !

Grüße Bernd

27.10.2017 - 09:17 Uhr

Die Arduino Familie lässt sich übrigens auch mit dem Visual Studio programmieren, das ist sehr komfortabel :

https://marketplace.visualstudio.com/items?itemName=VisualMicro.ArduinoIDEforVisualStudio

Wenn Du lernen willst und später noch mehr Sensoren dazukommen kannst Du das Ganze mit einem Arduino machen. Man braucht dazu neben dem Arduino ein LAN oder WLAN Modul. Und einen Taster.

Wenn es bei dem Taster bleiben soll dann ist der oben erwähnte ESP8266 eine gute Wahl. Es gibt bereits viele fertige Projekte mit dem Baustein.

Hier ist ein Notruftaster mit dem ESP8266 : http://www.mikrocontroller-elektronik.de/wlan-notruftaster-mit-dem-esp8266-modul/

Projekt 2 ist ein Button für ITTT mit dem ESP8266 : http://t3n.de/news/arduino-7-einfache-esp8266-projekte-681034/

Hier noch ein ESP8266-Taster-Projekt : http://esp8266-server.de/MQTT/MQTT-Taster.html

Den Amazon Button kann man zweckentfremden. Aber er ist innen sehr billig aufgebaut und hält nur eine bestimmte Anzahl Auslösungen. Ausserdem ist er sehr träge da er beim Betätigen erstmal hochfahren muss.

Einsatzgebiet der Dash-Buttons :

Grüße Bernd

19.07.2017 - 10:25 Uhr

Probiere zuerst Dich mit dem SQL Management Studio mit User und Kennwort einzuloggen. Dann mit Connectionstring.

Grüße Bernd

19.06.2017 - 10:30 Uhr

Wenn man eine Applikation in 2.0 und in 4.0 erstellt dann läuft sie auf allen Windows Versionen ab XP SP3 ohne Installation eines Frameworks. So habe ich das für meine Testversion gemacht.

Grüße Bernd

31.05.2017 - 09:34 Uhr

Falls es interessiert : Die Uni Heidelberg hat ein Projekt OpenMapSurfer.NET Framework, dass OSM Daten verarbeitet, auf Dot.Net Basis. Damit erstellen Sie z.B. spezielle Karten für unsere Rettungshundeinsätze. Die sind so genau, die Polizei ist immer neidisch !

http://wiki.openstreetmap.org/wiki/OpenMapSurfer

Grüße Bernd

29.05.2017 - 14:59 Uhr

Bei SQL Compact muss man 7 DLL's ins Programmverzeichnis kopieren ohne eine Installation.

Bei SQLite muss eine Redistributable C++ 2008 o.ä. installiert werden.

Grüße Bernd

29.05.2017 - 09:41 Uhr

Die Verwaltung der Datenbanken kann auch mit Microsoft Management Studio Express durchgeführt werden.

Das geht leider nur mit einer alten Version des SQL Management Studios. In den neueren wurde der Support wieder herausgenommen.

SQL Compact läuft immer noch recht gut, man muss nur wissen dass sie nicht weiterentwickelt wird.

Ich habe eine Testversion einer Software geschrieben, die sofort auf nahezu jedem Rechner läuft und keine Installation irgendwelcher Komponenten erfodert. Das mache ich mit dem SQL Compact. Bei SQLite und LocalDB sind Installationen von Komponenten notwendig.

Bei SQL Compact kommt nur eine Fehlermeldung wenn eine ältere Version des Compact Servers auf dem Rechner installiert ist. Dann muss man die Runtime installieren, dann reichen die DLL's nicht aus.

Grüße Bernd

28.05.2017 - 12:50 Uhr

Hallo Martin,

schau auch hier ab Kapitel 10 :

http://download.seven-c.de/files/DatenbankenHowTo.htm#10

Grüße Bernd

27.05.2017 - 18:50 Uhr

Wie Abt schon gesagt benutze die Basisklassen die für jede Datenbank funktionieren.

Du musst dann nur noch an ganz wenigen Stellen Code pro Datenbanktyp schreiben, meistens nur eine Zeile.

Bei mir sieht das z.B. so aus :

public DbConnection CreateConnection(Provider dbprovider)
{
	DbConnection conn = null;
	if (dbprovider == DatabaseProvider.SQLServerCompactEdition) conn = new SqlCeConnection();
	if (dbprovider == DatabaseProvider.MicrosoftSQLServer)
	{
		DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.SqlClient");
		conn = factory.CreateConnection();
	}
	if (dbprovider == DatabaseProvider.MySQL) conn = new MySqlConnection();
	if (dbprovider == DatabaseProvider.MariaDB) conn = new MySqlConnection();
	if (dbprovider == DatabaseProvider.OracleSQLServer) conn = new OracleConnection();
	if (dbprovider == DatabaseProvider.OleDB) conn = new OleDbConnection();
	if (dbprovider == DatabaseProvider.PostgreSQL) conn = new SqlConnection();
	return conn;
}

Grüße Bernd

27.05.2017 - 18:43 Uhr

Hab jetzt mal eine Anleitung geschrieben was ich so alles gebaut habe :

http://www.partyfotos.de/madVR/

Wird ständig ergänzt.

Grüße Bernd

19.05.2017 - 19:48 Uhr

Hallo Leute,

seit gestern arbeite ich an einem neuen Projekt :

Selbstbau eines Blurayplayers auf Basis von Windows 10.
Für mich ganz neu Windows als Basis für solche Zwecke zu nehmen.

Was kann er ?

  • Wiedergabe von Blurays (2D und 3D)
  • Chroma Upsampling auf 4:4:4, also praktisch eine Dekomprimierung der farbinformationen
  • Upscaling von Full-HD auf 4K mit intelligenten Algorithmen
  • Schärfen und Verbessern des Bildes
  • Speichern von bis zu 1000 Blurays auf internem Speicher in Originalqualität
  • Wiedergabe von Dateien von Festplatte oder Netzwerk
  • Wiedergaben von 4K Fernsehen
  • Später mal Wiedergabe von 4K Ultra HD Blurays

Hardware : Rechenleistung ohne Ende ist nötig !
i7, 16 GB Ram, GTX 1080 mit 11 MB RAM.

Software : Windows 10 Pro, MPC-HC, KODI, madVR, SVP, PowerDVD.

Ich habe vor dazu auch noch eigene Software zu schreiben später mal. Die Software soll die Metadaten des Videostreams auswerten und dann das Wiedergabegerät auf das richtige Preset stellen : SDR,3D,HDR-500,HDR-1000,HDR-2000,HDR-4000

Gehäuse : Dign X15e

Bin gerade am Bauen und werde berichten !

Grüße Bernd

17.05.2017 - 16:48 Uhr

Hallo TigerCrow,

der DataReader liest erstmal nur die erste Zeile. Deshalb weiß man nicht wieviele Zeilen die Ergebnismenge hat. Also entweder alle lesen und zählen oder besser folgendes Kommando vorher absetzen (so mach ich das) :


string sql = @"select (count(*) from kunden where name='Hugo';";
MySqlCommand cmd = new MySqlCommand(sql, DBcon);
MySqlDataReader result = cmd.ExecuteReader();

Grüße Bernd

17.03.2017 - 08:58 Uhr

Ich erlaube jede Eingabe in das Feld Telefonnummer.

Braucht dann allerdings etwas mehr Aufwand bei der Wahl einer Telefonnummer oder bei der Rückwärtssuche : Suche eines Namens anhand einer Telefonnummer.

Grüße Bernd

14.02.2017 - 13:04 Uhr

Hallo Markus,

wie Du der Doku entnehmen kannst hast Du die Möglichkeit WriteXML mit Schema und Daten aufzurufen oder nur die Daten.

Wenn Du die Daten aus dem DataSet entfernst wird nur das Schema geschrieben (bei WriteSchema).

Ich sehe da allerdings keinen Sinn drin denn was nützen Dir die Daten ohne Schema ?

Grüße Bernd

06.02.2017 - 12:41 Uhr

Willst Du den Text nur anzeigen oder als Grafikdatei abspeichern ?

Die Schrift "Courier New" geht nicht ?

Grüße Bernd

06.02.2017 - 12:21 Uhr

Kannst Du eine Schriftart verwenden die im Windows enthalten ist ? Dann brauchst Du die Schrift nicht in eine Resource einzubinden.

Dann geht das schreiben in eine Grafik so :

Bitmap bmp = new Bitmap("Bitmap.bmp");
RectangleF rectf = new RectangleF(70, 90, 1900, 1000);
Graphics g = Graphics.FromImage(bmp);
g.SmoothingMode = SmoothingMode.AntiAlias;
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.PixelOffsetMode = PixelOffsetMode.HighQuality;
g.DrawString(text, new Font("Tahoma", 40), Brushes.Black, rectf);

Grüße Bernd

03.01.2017 - 21:10 Uhr

Eine andere Möglichkeit : Einen DataReader öffnen und irgendwas aus der Tabelle lesen, die Spalten kann man dann wie folgt iterieren :

DbDataReader dr = new DbDataReader();
...
foreach (DataColumn col in dr.Columns)
{
    ...
}

Grüße Bernd

30.12.2016 - 11:36 Uhr

So durchläufst Du die Listview Items :

foreach(ListViewItem lvi in supercooleListe.Items)
{
    if (lvi.Name == "listItem1") ...
}

Grüße Bernd

28.12.2016 - 17:48 Uhr

Das geht, aber Du musst alle Felder und Datasets in der Datenquelle angeben.

Pro Tablix kannst Du nur auf Felder eines Datasets zugreifen.

Grüße Bernd