Artikel mit ‘VB.Net’ getagged

Vb.net wpf listview add

Mittwoch, 21. Juli 2010

Es war mal so schön einfach Daten in einer Listeview anzuzeigen, aber man muss ja immer alles ändert damit den Programmieren auch nicht langweilig wird ;)
Ich wollte mal ein wenig mit WPF arbeiten, weil man damit schöne durchsichtige Controls in seiner Oberfläche erstellen kann. Ohne viel Aufwand zu betreiben.

Die Listview auf die Oberfläche ziehen und ein paar Spalten einfügen habe ich auch noch hinbekommen, war aber auch nicht so einfach wie mit WinForms. Aber was sollst ;)
Ist ja für die Transparenz

Doch als ich ein paar Test-Daten in meine Listview eingelesen habe wurde mir in allen drei Spalten der gleich Wert Angezeigt :( , obwohl ich genau das gleiche gemacht habe wie bei WinFroms Listview.

Hier mal der Quellcode und das Ergebnis:

1
2
3
Dim MyLVItem As New ListViewItem
MyLVItem.Content = "Spalte1"
lstData.Items.Add(MyLVItem)

Hier mal mein XML:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<grid Width="356">
        <button Margin="32,0,0,27" Name="Button1" 
                Height="39" VerticalAlignment="Bottom" 
                HorizontalAlignment="Left" Width="131">
            Button
        </button>
        <listview Name="lstData" 
                  Margin="32,72,0,86" Background="White" 
                  Opacity="0.8" HorizontalAlignment="Left" Width="254">
            </listview><listview .View>
                <gridview>
                    <gridviewcolumn Width="Auto">Name1_ColumnHead</gridviewcolumn>
                    <gridviewcolumn Width="Auto">Name2_ColumnHead</gridviewcolumn>
                </gridview>
            </listview>
 
    </grid>

Lösung

(weiterlesen…)

VB.Net Sqlite Dataset zeigt keine dezimalstellen bzw Kommastellen an

Dienstag, 06. Juli 2010

Ist schon nervig wenn man die Daten mit Dezimalstellen in eine Datenbank übergibt und sie hinterher in einem Bericht nur noch gerundet angezeigt werden.

Ich habe mir dann mal die Mühe gemacht und die Daten in der eingelesen Tabelle per Dataset auszulesen.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Dim ConnStrSL As String = "Data Source = " & _
Application.StartupPath & "\Datenbank\test.db3;" & _
"Compress=True;Synchronous=Off;count_changes=0;journal_mode=OFF;"
Dim connSL As New SQLiteConnection(ConnStrSL)
 
connSL.Open()
 
Dim da As New SQLiteDataAdapter("select *  from [tbl_test]", connSL)
Dim ds As New System.Data.DataSet
 
da.Fill(ds)
 
With ds.Tables(0)
	Console.Write(vbCrLf)
	For i = 0 To .Columns.Count - 1
		Console.Write(.Columns.Item(i).Caption & vbTab)
	Next
 
	For i = 0 To .Rows.Count - 1
		Console.Write(vbCrLf)
		For c = 0 To .Columns.Count - 1
			Console.Write(.Rows(i).Item(c) & vbTab)
		Next
	Next
End With
 
connSL.Close()

Die Ausgabe sah dann so aus:

1
2
3
4
5
6
[Regal Nr]	Anzahl
236		1
236		1
236		1
236		15
236		15

Da dachte ich die Daten werden vielleicht falsch importiert aber das habe ich schnell verworfen und habe mir die Daten einfach mal per DataReader ausgegeben

1
2
3
4
5
6
7
8
9
10
connSL.Open()
cmdSL.CommandText = "select *  from [tbl_test]"
Dim MYDataReader As SQLite.SQLiteDataReader = cmdSL.ExecuteReader
 
Do While MYDataReader.Read
	Debug.Print(MYDataReader.Item(0).ToString & vbTab & _
	MYDataReader.Item(1).ToString)
Loop
 
connSL.Close()

Die Ausgabe sah dann so aus:

1
2
3
4
5
6
[Regal Nr]	Anzahl
236		1,6
236		1,5	
236		1,2
236		15,2
236		15,2

Dann war ich ganz verwirrt wieso wird per Dataset alles ohne Dezimalstellen ausgegeben und per DataReader dann mit O__o

Doch schließlich habe ich den Fehler doch gefunden ;)
Beim erstellen der Tabelle tbl_test habe ich schon einen Fehler gemacht den aber SqLite einfach mal so über geht und auch alles damit macht aber bei der Ausgabe per Dataset zickt.
Hier mein erstellen der Tabelle:

1
CREATE TABLE [tbl_test] ([Regal Nr] varchar(255), Anzahl Single)

und Fehler gesehen?

1
CREATE TABLE [tbl_test] ([Regal Nr] varchar(255), Anzahl DOUBLE)

Ja ist nicht so einfach den Unterschied zu sehen ;)
Ich habe die Anzahl jetzt einfach als DOUBLE deklariert, weil SqLite SINGLE so eigentlich nicht kennt.
Muss mir aber auch mal jemand sagen. gemein gemein :(

vb.net 32bit ODBC auf 64Bit System

Donnerstag, 18. Februar 2010

ich hatte gerade das Vergnügen mich mit einer kuriosen Fehlermeldung auseinander zu setzten.

Wollte von einem 64Bit Server auf den ODBC-Treiber vom Sybase Advantage Database Server 9 zugreifen.

1
2
3
4
Hier mal die Fehlermeldung:
Microsoft ODBC Driver Manager : 
Der angegebene DSN weist eine nicht 
übereinstimmende Architektur von Treiber und Anwendung auf.

Ich habe das Programm auf einem 32Bit Windows am Laufen und alles funktioniert.
Nur so bald das Programm auf einem 64Bit Windows/Sever laufen soll kommt diese Meldung.
Ich habe auch geschaut ob der Treiber installiert ist.

Lösung:

Der ODBC-Treiber ist ein 32Bit Treiber und das Programm lief als 64Bit Anwendung schön an dem Fehlenden *32 im Taskmanager zu sehen.

Da Visual Studio 2008 die Anwendungen Standard mäßig für beide System also 32bit und 64bit kompiliert meint Windows der Treiber für die Verbindung fehlt.

Also muss man in Visual Studio 2008 einfach die Ziel-CPU ändern auf x86.

(Eigenschaften Vom Projekt -> Kompilieren -> Erweiterte Kompilierungsoptionen -> Ziel-CPU)

Und schon geht alles :)

VB.NET Textdatei mit ANSI formatierung erstellen

Dienstag, 10. November 2009

Falls man es nicht weiss also ich wusste es nicht aber VB.NET schreibt die Textfiles Standard mäßig mit UTF-8.
Also zumindest die Funktionen WriteAllText und StreamWriter.
Was zu einem großen Verhängnis werden kann.

Wir arbeiten in unserer Firma mit dem SUPER TOLLEN Futura. Bei diesem SUPER TOLLEN Programm kann man automatisch Wareneingänge einlesen.
Das Problem nur, wenn die Textfiles zum einlesen eine UTF-8 Formatierung haben, kann Futura sie nicht einlesen.
Als nächstes kommt hinzu das Futura deswegen keine Fehler auswirft, sondern einfach sagt Textdatei ohne Probleme eingelesen und die Datei enthielt keine Daten.
Wie ich es liebe!!!

Ich habe mit den tollen Tools wie PFEdit (In dem Programm sieht man den BOM einer Datei) und PSPad (Mit dem Programm kann man die Formatierung umstellen) dann herausgefunden woran es liegt.
Und jetzt kommt nur noch das Problem VB.NET zusagen das er die Textdatei doch bitte in ANSI schreiben soll.

Aber ich habe es hinbekommen :)

Lösung:

(weiterlesen…)

Service Start Pfad (Service StartupPath)

Freitag, 07. August 2009

Wenn man den Startup Pfad der Form haben will ist das ja einfach.

1
Application.StartupPath

Aber im Service wollte das nicht so einfach gehen :(
ich habe es trozdem hinbekommen ;)

1
2
3
4
Imports System.IO
Imports System.Reflection
 
Path.GetDirectoryName([Assembly].GetEntryAssembly().Location

VB.Net Listview mit Progressbar

Montag, 25. Mai 2009

Hallo ich habe schon lange mal nach sowas gesucht nur immer keine lust gehabt in google zu suchen ;)

jetzt habe ich es doch getan und auch gleich was gefunden.

Source:
vbfrance.com/codes/PROGRESSBAR-DANS-LISTVIEW-VB-NET_30251.aspx

Damit funktioniert das schon ganz gut aber ein paar kleine Fehler sind noch drin ich habe das mal ein wenig abgeändert ;)

(weiterlesen…)