2017-08-10 3 views
-3

私はビジュアルスタジオ2017でプロジェクトを作成しています。以前作成したテキストファイルの名前で作成したフォームにチェックボックスを入れてFTPサーバーに送信する必要があります。 これは可能ですか? ここに私のコードのいくつかは、より多くのコードについて気軽にです:フォームをコンソールに接続

は、ファイルを作成し、それを保存します。

using (StreamWriter writer = new StreamWriter("C:\\Users\\HP8200\\Desktop\\Faturas Teste\\Fatura " + _transaction.TransDocNumber + ".txt")) 
{ 
    string numcont = _transaction.PartyFederalTaxID; 
    double numenc = _transaction.BillToPartyID; 
    double numfatura = _transaction.TransDocNumber; 
    DateTime data = _transaction.CreateDate; 
    double valor = _transaction.TotalAmount; 
    int zona = transaction.UnloadPlaceAddress.AddressID; 
    string zona2 = transaction.UnloadPlaceAddress.AddressLine2; 
    double precoantesdisc = bsoItemTrans.BSOItemTransactionDetail.TransactionDetail.PackUnitPrice; 
    double preconet = transaction.TotalTransactionAmount; 
    double quantidade = transaction.Details.Count; 
    string bonus = "0"; 
    string valorStr = valor.ToString(CultureInfo.InvariantCulture); 
    string preconetStr = preconet.ToString(CultureInfo.InvariantCulture); 
    string precoantesdiscStr = precoantesdisc.ToString(CultureInfo.InvariantCulture); 

    writer.WriteLine($"{numcont};{numenc};{numfatura};{data:dd/MM/yyyy};{valorStr};{zona};"); 
    foreach (ItemTransactionDetail detail in transaction.Details) 
    { 
     var item = MyApp.DSOCache.ItemProvider.GetItem(detail.ItemID, MyApp.SystemSettings.BaseCurrency); 
     double taxRate = MyApp.DSOCache.TaxesProvider.GetTaxRateFromTaxableGroupID(detail.TaxableGroupID, "PRT", "CON"); 
     string barcode = item.BarCode; 
     writer.WriteLine($"{barcode};{taxRate};{precoantesdiscStr};{preconetStr};{quantidade};{bonus}"); 
    } 

} 

SqlConnection conn = new SqlConnection(@"Data source = 2c4138928627\Sage ; Database=ARMINDOData ; User Id=sa ; Password=sage2008+"); 
SqlCommand command = new SqlCommand("IF OBJECT_ID('UXZona', 'U') IS NULL CREATE TABLE UXZona(IDZona int,Morada char(50));", conn); 
conn.Open(); 
SqlCommand insertCommand = new SqlCommand("INSERT INTO UXZona(FirstColumn, SecondColumn) VALUES (@0, @1)", conn); 
command.ExecuteNonQuery(); 

SqlCommand con = new SqlCommand("IF OBJECT_ID('UXZona', 'U') IS NULL CREATE TABLE UXZona(IDZona int,Morada char(50));", conn); 

MessageBox.Show("gravou"); 

フォームコード:

フォームで

私はちょうど空のチェックリストを持っており、送信ボタン。

UPDATE

追加2スクリーンショットはここ

具体的には、私は私が

enter image description here

上記のコードで作成したテキストファイルをきたし、私は名前を配置する必要がありますこのチェックリスト内にそのファイルの名前を入力して、送信ボタンを押すと、自分が所有するFTPサーバーにテキストファイルを送信します。

enter image description here

UPDATE 2: はM Idreesが私を与えたいくつかのコードを追加しました。

private void checkedListBox1_SelectedIndexChanged(object sender, EventArgs e) 
    { 
     void LoadFileNames() 
     { 
      string path = @"C:\Users\HP8200\Desktop\Faturas Teste"; 
      string fileNameOnly = ""; 
      foreach (var item in System.IO.Directory.GetFiles(path, "*.txt")) // here you can change file extension according to your needs. 
      { 
       fileNameOnly = System.IO.Path.GetFileNameWithoutExtension(item); 
       checkedListBox1.Items.Add(fileNameOnly); // actually adding files names to checkbox listing 
      } 
     } 
    } 
+1

コメントは議論の対象外です。この会話は[チャットに移動]されています(http://chat.stackoverflow.com/rooms/151621/discussion-on-question-by-joao-costa-connecting-a-form-with-console)。 –

答えて

2

私はあなたのフォーム上のコントロールCheckedListBox(名前checkedListBox1)を追加したと仮定しました。いくつかのディレクトリからファイルを取得することで、これにアイテムを追加する必要があります。これがOKならばあなたはこのコードを使用することができます:

private void LoadFileNames() 
{ 
    string path = @"C:\Path\To\Directory"; 
    string fileNameOnly = ""; 
    foreach (var item in System.IO.Directory.GetFiles(path,"*.txt")) // here you can change file extension according to your needs. 
    { 
     fileNameOnly = System.IO.Path.GetFileNameWithoutExtension(item); 
     checkedListBox1.Items.Add(fileNameOnly); // actually adding files names to checkbox listing 
    } 
} 

あなたはイベント、またはあなたが必要とするいくつかの他のイベントからこの関数を呼び出すことができます。

private void Form1_Load(object sender, EventArgs e) 
{ 
    LoadFileNames(); 
} 
+0

ありがとう、私はそれが多分役立つ場合、いくつかのスクリーンショットを追加しました。 –

+0

私はテストしましたが、チェックリストは空です –

+0

あなたが設定したパスは、そのディレクトリに ".txt"ファイルがあります。 Form_Loadイベントからこの関数を呼び出しましたか? –

関連する問題