2017-09-07 7 views
0

ボタンテキストの文字列を取得する方法は?あなたの助けボタンテキスト内のファイル名を表示

+1

https://stackoverflow.com/help/how-to-ask - ご質問を改善してください。ここにあなたが何を求めているのかはっきりしない。 –

+0

申し訳ありません、新しいです。私は開いているボタンを押して、私はcsvファイルを選択し、私のdataGridviewに表示することができます。ファイルを開いた後、開いているボタンをファイル名に変更します。 – Tomy

+0

'btn_open.Text'をあなたの' filename'文字列に代入することはできますか? –

答えて

0

あなたがOpenFileDialogを使用してファイルを選択するための

private void btn_open_Click(object sender, EventArgs e) 
{ 
    openFileDialog1.ShowDialog(); 
    ReadCSV(openFileDialog1.FileName); 
    btn_open.Text = "filename here"; 

    string targetdirectory = "D:\\Projects"; 
    string filename = Path.GetFileNameWithoutExtension(target directory); 
} 

おかげで、OpenFileDialog.FileNameは、選択したファイルのフルパスが含まれています。

Path.GetFileNameWithoutExtension()拡張子なしでファイル名を取得するだけです。ただし、ディレクトリではなく実際のファイルパスを渡す必要があります。ディレクトリパスを渡すと、単に目的の結果とは異なる最も内側のディレクトリ名が取得されます。

だから何をすべきか。

  • OpenFileDialogからファイル名を取得します。
  • からPath.GetFileNameWithoutExtension()までの方法を渡す。
  • 結果の文字列をボタンテキストとして設定します。

また、ShowDialog()の正しい使用法は、戻り値をチェックすることです。ユーザーがOKボタンをクリックした場合はtrue、それ以外の場合はfalseを返します。

if(openFileDialog1.ShowDialog() == true) 
{ 
    string file = Path.GetFileNameWithoutExtension(openFileDialog1.FileName); 
    btn_open.Text = file; 
} 
+0

ありがとうございます! if(openFileDialog1.ShowDialog()== true)== Dialog Resultで使用されていません。 – Tomy

+0

OK、WPFを使用して私の例をコード化しました。これは私が開いたもので、WinFormsのようです。したがって、同じ結果を得る 'if(openFileDialog1.ShowDialog()== DialogResult.OK)'を実行することができます。 – Sach

+0

うわー、働いて!私はあなたに憧れます。良い一日を。 – Tomy

関連する問題