Hi, meisteralex
Versuchs mit HitTestInfo....
Sollte auch bei DataGridView funzen.
private void dataGrid1_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
DataGrid.HitTestInfo info = this.dataGrid1.HitTest(e.X, e.Y);
MessageBox.Show(info.Type.ToString());
}
}
mfg.
Hi juetho,
Hauptsächlich handelt mein Problem in diesem Thread über die Relation im DataSet. Ich habe mir deinen verlinkten Thread angesehen, aber das ist nicht das was ich suche. Es kann doch nicht sein das man mit C# in einem DataSet nicht die Möglichkeit hat eine Relation folgendermassen darzustellen oder ???
Wenn ich z.B.: eine Rechnungstabelle habe in der nur die ID zu einem Artikel gespeichert ist und ich den Namen des Artikels diesen in einem Grid anzeigen möchte das das in einem Textfeld nicht möglich ist.
Da muß es doch eine Möglichkeit geben??????????????
Weiß den keiner einen vernünftigen Weg.
verwendetes Datenbanksystem: ACCESS
Hi Leute,
ich habe ein ziemlich lästiges Problem mit einem DataSet mit einer Relation.
Folgende Beispiel Tabellen
EMPLOYEE 😗EMPLOYEEID
*XNAME
LOGBOOK*EMPLOYEEID *TEXT
Jetzt zu meinem Problem...
Ich möchte jetzt in einem DataGridView die Daten aus dem LOGBOOK anzeigen das funktioniert ja noch doch jetzt will ich anstatt der ID den Namen des Kunden in der Spalte EMPLOYEEID angezeigt bekommen.
zb.: so...
DataGridViewSpalte["EMPLOYEEID"].DataPropertyName = "EMPLOYEE.XNAME";
DataGridViewSpalte["TEXT"].DataPropertyName = "LOGBOOK.TEXT";
Wie bekomme ich das hin.
Hier noch Beispiel Code
DataSet dsPARTENCHILD = null;
DataTable myTable1 = null;
DataTable myTable2 = null;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
dsPARTENCHILD = new DataSet();
myTable1 = new DataTable("EMPLOYEE");
myTable2 = new DataTable("LOGBOOK");
dsPARTENCHILD.Tables.Add(myTable1);
dsPARTENCHILD.Tables.Add(myTable2);
DataColumn empEmployeID = new DataColumn("EMPLOYEEID");
DataColumn empEmployeNAME = new DataColumn("XNAME");
DataColumn logEmployeID = new DataColumn("EMPLOYEEID");
DataColumn logEmployeTEXT = new DataColumn("TEXT");
myTable1.Columns.Add(empEmployeID);
myTable1.Columns.Add(empEmployeNAME);
myTable2.Columns.Add(logEmployeID);
myTable2.Columns.Add(logEmployeTEXT);
FillData();
empEmployeID = dsPARTENCHILD.Tables["EMPLOYEE"].Columns["EMPLOYEEID"];
logEmployeID = dsPARTENCHILD.Tables["LOGBOOK"].Columns["EMPLOYEEID"];
DataRelation myDRel = new
DataRelation("myFirsRelation", empEmployeID, logEmployeID);
dsPARTENCHILD.Relations.Add(myDRel);
//dgvKrypton.DataSource = dsPARTENCHILD.Tables["EMPLOYEE"];
//dgvKrypton.DataMember = "myFirsRelation";
dgvMS.DataSource = dsPARTENCHILD.Tables["EMPLOYEE"];
dgvMS.DataMember = "myFirsRelation";
}
void FillData()
{
DataRow row1 = myTable1.NewRow();
row1["EMPLOYEEID"] = 1;
row1["XNAME"] = "Max";
myTable1.Rows.Add(row1);
row1 = myTable1.NewRow();
row1["EMPLOYEEID"] = 2;
row1["XNAME"] = "Susi";
myTable1.Rows.Add(row1);
DataRow row2 = myTable2.NewRow();
row2["EMPLOYEEID"] = 2;
row2["TEXT"] = "Das ist ein Test";
myTable2.Rows.Add(row2);
}
Habe schon so ziemlich alle Möglichkeiten mit DataSource und DataMember ausprobiert hat aber leider nichts geholfen.
Vielleicht könnt Ihr mir weiterhelfen.
Hallo borlaenge,
Versuchs für den Anfang mit den dafür vorgesehenen Komponenten von VS,
sprich DataAdapter, DataSet usw...
Mit dem DataAdapter kannst du zb.: mit adapter.Update() deine Änderngen
in die DB schreiben.
Mfg.:
Weiß den hier keiner woran dieser Fehler liegen kann.
Fehlt mir vielleicht ein SP von VisualStudio????????????????
Hi Leute,
Ich habe mir das Setup Paket von Telerik(RadControls) geladen und installiert.
Wenn ich die Demos ansehen möchte bekomme ich folgenden Fehler ->
Method not found: 'Void System.Windows.Media.Animation.Storyboard.Begin()' usw...
Woran kann das liegen
Ich habe VS2008 Express installiert
Bin für jede Hilfe dankbar.
Hi Leute,
Ich möchte mit dem SD Kern eine eigene Anwendung basteln, das funktioniert auch schon ganz gut mit den AddIn's.
Jetzt schwebt mir folgendes Szenario vor....
Ich möchte mir ein Addin bauen die das Speichern in eine Datenbank übernimmt,
aber dabei den modularen Aufbau nicht verlieren.
also zb.: könnten das folgende AddIn's werden...*SaveOffline
*SaveOnline(WebService)
*SaveRemoting
Ich habe also einen Container(Workbench) in den lade und zeige ich meine Module an. Ich habe zb.: ein AddIn Kunden, Angebote usw...
Ich möchte jetzt meine Kundendaten speichern anhand des oder der installierten AddIn's.
Weiß von euch jemand wie so eine Klasse aussehen könnte an die ich meine Daten übergebe die sich dann um den Rest kümmert.
Ich habe mir den WebService von AdventureWorks von MS angesehen, die arbeiten dort mit Objekten die auf einem XML Shema basieren.
Hoffe das ich mein Anliegen einigermaßen bechreiben konnte.
Stehe hier total auf dem Schlauch was den Aufbau betrifft.
Bin für jeden Denkanstoß dankbar.
Wie wärs mit ICSharpCode.Core siehe SharpDevelop
Danke erstmal für die Antworten
Werde mir den Beitrag auf DotNetPro mal ansehen wenn die Seite wieder Online ist.
Hallo Golo Roden
Die DotNetPro habe ich leider nicht und das Probrabo habe ich schon mal gehabt.
Weist du sonst keinen vernünftigen Link zu diesem Thema oder vielleicht weiss
simonknight6600 ein Nachschlagewerk.
Hi Leute,
Ich hoffe es gibt hier jemanden der sich mit dem SharpDevelop Kern
auskennt.
Ich habe mir das was es im INet gibt (glaube ich zumindest) durchgelesen.
Die Doku für den SharpDevelop Kern ist ziemlich dürftig.
Möchte folgenes AddIn basteln: Externer ToolManager wie der in VS
Der funktioniert auch nur habe ich ein Problem mit der Darstellung
der Menüpunkte im Workbench. Die muss ich zur Laufzeit erstellen,
also beim Laden des Addins(ToolManager) muss ich die Einträge im Menü hinzufügen und auch nachdem man einen Eintrag in einem Dialog vorgenommen hat muss ich das Menü aktualisieren, diese sind in einer XML Datei gespeichert. Ich kann also das nicht
in der addin Datei speichern sondern muss diese per Code erstellen,
nur leider funktioniert das überhaupt gar nicht.
vlt. kennt jemand ein paar gute links zum Thema Addins mit SharpDevelop erstellen
Hoffe es findet sich jemand der mir helfen kann.
Hallo skunkiii,
Ich mal schnell so versucht....
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
Graphics g = this.pictureBox1.CreateGraphics();
Bitmap bmp = new Bitmap(this.pictureBox1.Image, this.pictureBox1.Width, this.pictureBox1.Height);
Graphics g1 = Graphics.FromImage(bmp);
Pen p = new Pen(Color.Red, 5);
g.DrawEllipse(p, e.X, e.Y, 5, 5);
g1.DrawEllipse(p, e.X, e.Y, 5, 5);
g.Dispose();
g1.Dispose();
bmp.Save("C:\\img.jpg");
}
das funkt....
bzw.: sie bei Codeproject nach.
Hallo DaHoff,
Mach dir doch einfach für jeden Content ein UserControl, da kannst du dur deine Steuerelemente im Designer platzieren.
Im TreeView hinterlegst du ein ClickEvent und je nach dem welcher Node angecklickt wurde lädst du dein Control in deinen Container.
Mfg.:
Hallo BennyP
Ich hab das Beispiel von dir propiert, der Server mekert zwar nicht aber
trotzdem werde ich nicht schlau draus.
Wenn ich das richtig verstanden habe dann rufe ich die Procedure mit
CALL proctest('test') auf dann wird der Wert der Tabelle in die Variable geschrieben oder wie??????????????????
ich habe jetzt ein Bsp von der MySQL Seite kopiert und es bei mir versucht zu speichern.
Wie immer ohne Erfolg.
CREATE PROCEDURE procedure1(IN parameter1 INTEGER)
BEGIN /* <-das funkt überhaupt nicht*/
DECLARE variable1 CHAR(10);
IF parameter1 = 17 THEN
SET variable1 = 'birds';
ELSE
SET variable1 = 'beasts';
END IF;
END /* <-das funkt überhaupt nicht*/
Ohne BEGIN und END bekomme ich folgenden Fehler:
SQL-Befehl:
CREATE PROCEDURE procedure1( IN parameter1 INTEGER ) DECLARE variable1 CHAR( 10 )
MySQL meldet:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DECLARE variable1 CHAR(10)' at line 2
Wieso ist das blos soooo kompliziert??????????????????
Danke für die Antwort, das werd ich gleich mal versuchen.
verwendetes Datenbanksystem: <MySQL>
Hi Leute...
Ich versuche gerade verzweifelt in einer MySQL Datenbank eine Stored Procedure
zu speichern und auszuführen.
Ich habe mir eine Beschreibung von MySQL runtergeladen.
Wenn ich aber die Beispiele ausprobieren möchte funktionieren die bei mir nicht.
Hier ein kleiner Auszug
CREATE PROCEDURE p1 ()
BEGIN
SELECT s1 FROM t;
END;
Fehlermeldung:
SQL-Befehl:
CREATE PROCEDURE p1( ) BEGIN SELECT s1
FROM t
MySQL meldet:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3
So funktionierts nur leider bekomme ich hier keine Daten zurück wenn ich die Procedure ausführe mit <CALL p1();>
CREATE PROCEDURE p1 () SELECT s1 FROM t;
Vielleicht kann mir von euch jemand helfen.
Danke
Hi Stipo
Sieh dir mal das an DataBound TreeView
Vielleich hilft die StreamReader weiter.
Siehe MSDN
Danke für die Antworten
Die zugangsdaten habe ich.
Ich kann aber nicht einfach die IP in den Connectionstring schreiben, weil ich
(Also so denke ich mir das) ich Zugangsdaten für den Server brauche und dann
noch Zugangsdaten für die DB.
Aber wenn ich das bei 1und1 sowieso vergessen kann dann habe ich noch eine
Frage an manunidi
Zu punkt 1)
Kannst du mir einen kleinen Tipp für die Möglichkeit mit php geben????
Zu punkt 2)
Habe zwar schon einmal einen kleinen Webservice geschrieben,
im Moment fehlt mir da jedoch der Ansatz für das implementieren des WS.
Vielleicht habt ihr eine kleine Starthilfe für mich oder Link für einen WS
mit dem man soetwas machen kann.
verwendetes Datenbanksystem: mysql
Hi Leute
hat von euch jemand eine Ahnung wie man auf einem Webserver installierte DB
in einem C# Windows Programm nutzen kann.
Die DB liegt bei 1und1......
Bitte um Hilfestellung
PS.: Googeln hat auch nicht wirklich was gebracht
Danke
Danke Rainbird,
jetzt funkt's
Das mit dem Service in der app.config stimmte,
habe diese Zeile vergessen aber dafür bekomme ich jetzt eine neue FileNotFoundException?????????????
Auschnitt aus der config datei
<service>
<!-- Geschäftsdienst "Userverwaltung" -->
<wellknown mode="SingleCall" type="EBMS.Users.Services.UserService, EBMS.Users.Services" objectUri="EBMS.Users.Contracts.IUserService" />
<!-- Geschäftsdienst "Artikelstammverwaltung" -->
<!--wellknown mode="SingleCall" type="Rainbird.Examples.NTier.ArticleMaster.Services.ArticleMasterService, Rainbird.Examples.NTier.ArticleMaster.Services" objectUri="Rainbird.Examples.NTier.ArticleMaster.Contracts.IArticleMasterService" /-->
<!-- Geschäftsdienst "Lagermverwaltung" -->
<!--wellknown mode="SingleCall" type="Rainbird.Examples.NTier.Inventory.Services.InventoryService, Rainbird.Examples.NTier.Inventory.Services" objectUri="Rainbird.Examples.NTier.Inventory.Contracts.IInventoryService" /-->
</service>
Hi Leute,
ich möchte hier diesen Thread nocheinmal aufrollen.
Habe mir den Applicationsserver angesehen und mal ein bisschen rumprobiert.
Zuerst habe ich diesen nicht einmal zum laufen gebracht, das hat sich jetzt erledigt.
Warum auch immer????????????
aber egal was ich jetzt mach, ich bekomme immer eine Fehlermeldung die wie
folgt aussieht -> siehe Anhang
Vielleicht kann mir das jemand erklären oder weiterhelfen.
Danke im voraus
Hallo Lina
Versuchs mal hier oder auf codeproject
Hi Dragonheartness
Vielleicht hilft dir das weiter
/// <summary>
/// Datei mit den Serveranfragen speichern.
/// </summary>
private void Save()
{
Application.DoEvents();
DeleteMajorFile();
string directory = String.IsNullOrEmpty (RemotingServer.Properties.Settings.Default.DefaultDocPath) ? GetEnvironmentVariable : RemotingServer.Properties.Settings.Default.DefaultDocPath;
string document = Path.Combine(directory, GetFileName);
using (TextWriter writer = new StreamWriter(document))
{
writer.WriteLine(String.Format("Server gestarted am {0}", DateTime.Now));
writer.WriteLine(Environment.NewLine);
StringReader reader = new StringReader(txtFromClient.Text);
string input = null;
while ((input = reader.ReadLine()) != null)
{
writer.Flush();
writer.WriteLine(input);
}
writer.WriteLine(Environment.NewLine);
writer.WriteLine ("************************Userliste************************");
writer.WriteLine(Environment.NewLine);
foreach (ListViewItem lvItem in listViewUserChanges.Items)
{
string row = String.Format("Username: {0} | Logon: {1} | Logout: {2}", lvItem.SubItems[0].Text, lvItem.SubItems [1].Text, lvItem.SubItems[1].Text);
writer.Flush();
writer.WriteLine(row);
}
reader.Close();
writer.Close();
}
}
/// <summary>
/// Löschen der älteren Datei aus dem Ordner
/// </summary>
private void DeleteMajorFile()
{
string directory = String.IsNullOrEmpty (RemotingServer.Properties.Settings.Default.DefaultDocPath) ? GetEnvironmentVariable : RemotingServer.Properties.Settings.Default.DefaultDocPath;
DirectoryInfo dInfo = new DirectoryInfo(directory);
FileInfo[] result = dInfo.GetFiles("Serveranfragen*");
if (result.Length >= RemotingServer.Properties.Settings.Default.MaxAnzDocs)
{
//Sortieren
Array.Sort(result, new FileSorter());
//Die Ältere Datei löschen
result[0].Delete();
}
}
/// <summary>
/// Namen für die Datei zusammenstellen.
/// </summary>
private string GetFileName
{
get
{
string documentName = String.Format("Serveranfragen_{0:ddMM_yyy_HH_mm}.txt", DateTime.Now);
return documentName;
}
}
Hi xxxprod
Habe diese Methode getestet leider ohne Erfolg.
Wenn ich als fileName "MSAccess.exe" übergebe bekomme ich ein leeres Array zurück.
Woran kann das liegen.
Hallo zusammen
Ich habe mir alle Antworten angesehen und gegoooogelt, aber leider bin ich nicht wirklich daraus schlau geworden.
Die Antwort von egrath: Das funktioniert nur mit einem laufenden Prozess den ich nicht habe genau wie bei Xqgene.
Bei trib: Was wenn ich Office 2007 installiert habe dann ist die Endung nicht mdb sondern acmdb oder so ähnlich???????????
Vielleicht kannst du mir egrath ein kleines Besispiel geben wie ich ohne laufenden Prozess den vollen namen(Pfad) der App ermitteln kann.
Danke im voraus
Hi Leute
Habe da mal eine Frage zur ProcessStartInfo Klasse.
Folgender Beispielcode
System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo("MSAccess.exe");
Gibt es eine Möglichkeit den vollen Pfad zum Access so zu ermitteln.
Also mit Process.Start(psi) wird zwar Access getarted aber was ich brauche ist der volle Pfad zu Access also C:\Programme\Office....\MSAccess.exe, der Pfad der in der Regedit steht.
Wie komm ich da ran.
Danke für eure Hilfe.
Hi WhiteBandit
Ich weiß nicht ob dir das weiterhilft...
DeineTabelle.Select();
Mit dieser Methode wird dir einDataRowArray zurückgeliefert.
Du kannst hier auch nach Daten in deiner Tabelle filtern.
mfg.
Hi Leut
habe eine Frage bezüglich Process.Start(Dateiname).
Weiss jemand von euch wie man den Öffnen mit Dialog (für eine unbekannte anwendung) bekommt.
try
{
if (File.Exists(Datei))
{
// Zu dieser Datei gibt es kein bekanntes Programm
Process.Start(Datei);
}
}
catch
{
?????????????
}
Bitte um Hilfe
Das speichern funktioniert ja, aber das lesen nicht.
Ich weiß nicht wo die Daten gespeichert werden, in der App.config jedenfalss nicht.
Hallo alle zusammen
Ich habe eine Frage zur ApplicationSettings in 2.0.
Habe schon eine ganze Weile im Forum gesucht und gegoogelt, aber leider
nicht das passende gefunden.
Ich möchte mir Werte in der App.config Datei speichern.
Das funktioniert ja auch.
Mein Problem ist jetzt das auslesen dieser Datei.
Wenn ich in meine Settings Datei im VS einen Wert anlege wird dieser in die
App.config Datei geschrieben mit einem Standardwert.
Wenn ich aber nun zur Laufzeit einen Wert ändere und speicher funktioniert das zwar, der Wert in der App.config bleibt aber immer der selbe Standardwert aber
angezeigt bekomme ich den geänderten Wert. Wie bekomme ich den aktuellen Wert
mit dem ConfigurationManager. Mit dem bekomme ich immer nur den Standardwert.
Ich brauche diese Config Datei in einer anderen dll die zum Projekt gehört, alse
muß ich mit dem ConfigurationManager arbeiten oder gibt es da eine andere
Möglichkeit.
Danke im Voraus.
aber ich möchte mir eben das wissen über die methodik aneignen
Du kanns't dir da den Code ansehen (OpenSource).
Hallo herbivore
Also wenn ich so oder so casten muß dann kann ich mir die Basisklasse eigentlich sparen, oder????
mfg.:
Tschuldige erstmal für die paar Fehler (War ja auch nur schematisch gemeint)
Ausgebessert:
public abstract class AbstracteBasisKlasse
{
public abstract event EventHandler Loaded;
public abstract event EventHandler ListLoaded;
public virtual DataTable GetEmptyTable
{
get
{
return new DataTable("Shema");
}
}
}
public class CustomerModel : AbstracteBasisKlasse
{
public override event EventHandler Loaded;
public override event EventHandler ListLoaded;
public override DataTable GetEmptyTable
{
get
{
return new DataTable("Shema für Customers");
}
}
public DataSet Rechnungen()
{
//.
//..
//... Was auch immer
return new DataSet("Rechnungen");
}
}
public class SupplierModel : AbstracteBasisKlasse
{
public override event EventHandler Loaded;
public override event EventHandler ListLoaded;
public override DataTable GetEmptyTable
{
get
{
return new DataTable("Shema für Supliers");
}
}
public DataSet Orders()
{
//.
//..
//... Was auch immer
return new DataSet("Orders");
}
}
public class TestClass
{
AbstracteBasisKlasse AbstrakteKlasse = new SupplierModel();
public TestClass()
{
DataTable dt = AbstrakteKlasse.GetEmptyTable;
//Bis auf das funktionierts ja auch
//Bei sagt der Compiler immer "WindowsApplication1.AbstracteBasisKlasse enthält keine Definition für "Orders".
//Was ja auch stimmt weil in der Basisklasse ja kein Dataset Orders ist, nur wie komme ich über die Basisklasse an das DataSet ran.
DataSet ds = AbstrakteKlasse.Orders();
}
}
mfg.:
Hi
Ich hätte mal eine Frage zu abstrakten Klassen
Habe mir das Beispiel von Rainbird angesehen (MVC).
Ich möchte jetzt folgendes realisieren
Ich habe eine Abstrakte Basisklasse die besitzt Standardmethoden,
Eigenschaften und Events.
zb.: event Loaded, void GetEmptyTable()....
Jetzt möchte ich eine ModelKlasse schreiben (zb.: SupplierModel).
Dieses Model erbt von meiner Basisklasse, in diese Modelklasse kommen jetzt aber noch einige spezielle Methoden die den Lieferanten betreffen.
Wie kann ich jetzt eine (Instanz) meiner Basisklasse erstellen dessen Methoden usw nutzen und aber auch die speziellen Methoden des SupplierModels nutzen.
Grund für dieses Vorhaben ist es das wenn ich alles in >>eine<< Modelklasse packe die schon ziemlich unübersichtlich werden kann.
Zur Veranschaulichung:
public abstract class AbstracteBasisKlasse
{
public abstract event Loaded;
public abstract event ListLoded;
usw...
public abstract DataTable GetEmptyTable()
{
return new DataTable("Shema");
}
}
public class SupplierModel : AbstracteBasisKlasse
{
public override DataTable GetEmptyTable()
{
return new DataTable("Suppliers");
}
public DataSet Orders()
{
return OrderDataSet;
}
}
public class TestClass
{
AbstracteBasisKlasse c1 = new CustomerModel();
public TestClass()
{
DataTable dt = c1.GetEmptyTable();
//Das hier möchte ich gerne nur funktioniert das nicht wie ich will.
DataSet ds = c1.Orders;??????????????
}
}
Rainbird mach das in seinem Beispiel noch mit einem Interface (IView), wo das Model an die Views übergeben wird. (habe ich hier darauf verzichtet)
public interface IView
{
Model _Model{ set; }
}
Ich weiß nicht ob und wie ich das machen soll. Vielleicht gehts es auch gar nicht und ich bin auf dem Holzweg oder aber ich brauche nur einen Denkanstoss.
Hoffe ich habe es so einigermassen erklären können.
Bin für jeden Vorschlag dankbar.
Jetzt habe ich da schon das nächste Problem
Ich möchte das Dreieck mit einem Mausklick auf die Zelle zeichnen.
Wie bekomme ich denn die Position der Zelle (Rechteck) heraus, das ich
ja zum zeichnen brauche.
//Mit dem krieg ich zwar ein Recteck aber die X, Y Koordinaten sind 0 oder nur minimal drüber.
this.dgKalender.CurrentCell.ContentBounds
Wie kann ich das am besten lösen wenn ich zb. in der 15 Spalte und der 10 Zeile
auf die Zelle klicke daß ich die korrekte Position der Zelle bekomme.
Danke Noodles das funktioniert wunderbar.
Hi Leute
hätte da mal eine Frage zum selber zeichnen von Zellen in einem DatagridView
Ich möchte folgendes Realisieren und zwar will ich wie bei MS Excel ein Dreieck
in eine bestimmte Zelle bekommen (Notiz markierung zur Zelle).
Habe jetzt folgendes geschrieben nur leider kann ich mir das Ergebnis nicht erklären.
int _triangle = 2;
private void DrawNoteTriangle(DataGridViewCellPaintingEventArgs e)
{
Rectangle newRect = new Rectangle(e.CellBounds.X + 15,
e.CellBounds.Y + 10, e.CellBounds.Width - 6,
e.CellBounds.Height - 6);
using (Brush gridBrush = new SolidBrush(this.dgKalender.GridColor),
backColorBrush = new SolidBrush(Color.Beige))
{
using (Pen gridLinePen = new Pen(gridBrush))
{
// Erase the cell.
e.Graphics.FillRectangle(backColorBrush, e.CellBounds);
//raw the grid lines (only the right and bottom lines;
//DataGridView takes care of the others).
e.Graphics.DrawLine(gridLinePen, e.CellBounds.Left,
e.CellBounds.Bottom - 1, e.CellBounds.Right - 1,
e.CellBounds.Bottom - 1);
e.Graphics.DrawLine(gridLinePen, e.CellBounds.Right - 1,
e.CellBounds.Top, e.CellBounds.Right - 1,
e.CellBounds.Bottom);
// Draw the inset highlight box.
e.Graphics.DrawRectangle(Pens.Blue, newRect);
//Das funkt nicht
tringleright[0] = new Point(newRect.Width - 1, newRect.Height - 1);
tringleright[1] = new Point(newRect.Width - _triangle - 1, newRect.Height - 1);
tringleright[2] = new Point(newRect.Width - 1, newRect.Height - _triangle - 1);
tringleright[3] = new Point(newRect.Width - 1, newRect.Height - 1);
e.Graphics.FillPolygon(new SolidBrush(Color.Red), tringleright);
e.Graphics.DrawPolygon(new Pen(Color.Yellow), tringleright);
//Draw the text content of the cell, ignoring alignment.
if (e.Value != null)
{
e.CellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
e.Graphics.DrawString((String)e.Value, e.CellStyle.Font,
Brushes.Crimson, e.CellBounds.X + 2,
e.CellBounds.Y + 2, StringFormat.GenericDefault);
}
}
}
}
Mit dem Code von Oben wird mir das Rechteck in die Zelle gezeichnet aber
das Dreieck was ich eigentlich haben will wird nicht gezeichnet oder
zumindest kann ich es nicht sehen.
Wenn ich das ganze zb.: mit einem Panel mache (beim Zeichen)
wird das Dreieck in die rechte untere Ecke gezeichnet.
Kann mir da jenmand weiterhelfen.
Hallo Stu42
Vielleicht genügt dir ein Regex in der Art
Regex regex = new System.Text.RegularExpressions.Regex("([\\,]+)", RegexOptions.Compiled);
string s= regex.Replace(s, ".");
Das ersetzt ein Komma mit einem Punkt.
Hi Leute
Ich weiß das das Thema MVC hier schon sehr oft behandelt wurde.
Ich habe aber dennoch eine Frage zu dem MVC Muster von Rainbird.
Habe mir sein Beispiel angesehen und muss sagen dass es wirklich sehr gut ist.
Da ich aber mit MVC noch an Erfahrung sammle habe ich eine Frage bezüglich
einer Datenanbindung. In dem Beispiel von Rainbird werden die Daten immer nur von einer Tabelle ausgelesen. Wie aber mache ich so etwas wie zb.: eine
Kundentabelle und in dieser Tabelle ist der Schlüssel einer Gruppe definiert.
Wie kann ich mit diesem Model zb.: in einer ComboBox den ValueMember (1) speichern und den DisplayMember ("Lieferant") anzeigen.
Hoffe habe meine Frage einigermassen formuliert.
Hi Spritking
Mit .Net 2.0
bool isLeapYear = DateTime.IsLeapYear(2028);
Mfg.:
Sie dir das mal an ist vom Codeproject.
Vielleicht ist es ja das was du suchst.
Items hinzufügen
private ImageList _smallImageList = new ImageList();
private ImageList _largeImageList = new ImageList();
private IconListManager _iconListManager;
if(File.Exists(PathDoc))
this.lvDokumente.Items.Add( sFileName, _iconListManager.AddFileIcon( PathDoc ) );
Zeichnet das zugehörige Icon zur Datei.
Ich habe ja auch nicht gemeint das es mir die DB-Abfragen erleichtern soll sondern ich meinte nur das beim Beispiel von MS (BankTeller) die Save Funktion eine Funktion im WorkItem ist. (Wie kann ich zb.: eine eigene SaveMethode schreiben),
damit ich die Daten in die Db bekomme.
Ich nabe VS 2005 Standard Edition installiert. (Geht aber trotzdem nicht)
Mein Vorhaben ist es eine modulare Anwendung zu programmieren und dazu eignet sich doch CAB eigentlich hervorragend oder nicht?????????
Hi Leute
Habe mir von MS Composite UI Application Block gezogen weil es sich interessant anhört.
Ich habe mir Hands on Labs angeguckt und auch den BankTeller aber irgendwie werde ich aus dem ganzen nicht schlau???????????????
Im Beispiel BankTeller werden die Daten aus einem Stream geladen und auch geschrieben (glaube ich jedenfalls).
Wie aber kann ich zum Bsp.: CAB benutzen und meine Daten aus einer DB ziehen und schreiben?????????????????
Habe mir auch noch Smart_Client_Software_Factory gezogen und installiert doch bei mir funkt das nicht so wie es eigentlich sein sollte. (Beim anlegen eines neuen Projektes habe ich keine neuen Vorlagen dazu bekommen um zb. ein CAB Projekt zu erstellen). Wieso nicht ????????
Vielleicht kann mir jemand dazu etwas erklären.
Danke