C#将所有用户输入保存到某种数据库或smth

时间:2015-11-18 04:25:15

标签: c#

我刚刚开始编写C#代码,我喜欢在键入自己的小窗体应用程序。

截图:

One of four tabs

One of four tabs

用C#编写。它基本上需要一个用户输入,称为" Kassenbestand", - " Ausgaben" +" Einnahmen"并在" End Bestand"中给出计算的€值。非常简单。

我有两个问题:

首先:

我想创建一个按钮来保存他所做的所有输入,这样他就可以保存并打开它,以防万一他忘了。

正如我所写,我很新,所以我该怎么做。我看过很多关于数据库等的东西,但也许你们中的一位专业人士可以更好地支持我并解释一下? :)

第二个问题:

我写了一个保存功能,制作一个截图,这样他就可以打印出他想要的所有东西。但他需要切断无用的边框等。是否有更平滑的方式来捕获表格并将其打印出来?我阅读了很多PrintDocument功能等等。有什么提示吗?

1 个答案:

答案 0 :(得分:0)

要保存用户输入,我建议将它们保存在.csv文件中。

编写csv文件:

        StreamWriter sw = File.AppendText(@"C:\Test\kassenbestand.csv");
        string header = "Datum;Kassenbestand;Ausgaben;Einnahmen";
        sw.WriteLine(header);
        //Write your Data
        string line = string.Format("{0};{1};{2};{3}", DateTime.Today.ToShortDateString(), 550, 400, 600);
        //...
        //...
        //...
        sw.Close();

阅读csv文件:

        StreamReader sr = new StreamReader(@"C:\Test\kassenbestand.csv");
        sr.ReadLine();//skip the header
        while (sr.Peek() != -1)
        {
            string line1 = sr.ReadLine();
            string[] splitted = line1.Split(';');
            // splitted[0] Datum
            // splitted[1] Kassenbestand
            // ...
        }
        sr.Close();

要获取窗口的屏幕截图,您可以使用此功能:

    private System.Drawing.Bitmap TakeScreenshot()
    {
        int StartX, StartY;
        int Width, Height;
        StartX = 0;
        StartY = 0;
        Width = Convert.ToInt32(this.Width);
        Height = Convert.ToInt32(this.Height);
        System.Drawing.Bitmap Screenshot = new System.Drawing.Bitmap(Width, Height);
        System.Drawing.Graphics G = System.Drawing.Graphics.FromImage(Screenshot);
        G.CopyFromScreen(StartX, StartY, 0, 0, new System.Drawing.Size(Width, Height));
        G.Dispose();
        return Screenshot;
    }

要保存它,您只需要保存位图:

       System.Drawing.Bitmap bitmap = TakeScreenshot();
       bitmap.Save(@"C:\Test\screenshot.png");
       bitmap.Dispose();