削除するのに使うファイルパスのIDを持つので、選択したアイテムの文字列をデータグリッドに保存しようとしています。c#datagridセルの抽出
わからないことは正しいことです。
私の列はこのように見えます
| ID |ユーザー番号|ファーストネーム|姓現在の| imagePath |
..01 ... 454656 .........ハリー..........ポッター.........ウィザード... .... ftp:// 192.168.1.8/Jellyfish.jpg
私のデータグリッドで「選択」をしようとすると、私は自分のFTPサーバからも削除します。 imagePath coloumの下に保存されている情報が必要なので、私は自分のftpの削除を行うことができます。
private void button2_Click(object sender, RoutedEventArgs e)
{
string imagePath = dataGrid1.SelectedItems.ToString();
Student selected = dataGrid1.SelectedItem as Stu;
if (selected == null)
MessageBox.Show("You must select a user");
else
{
if (MessageBoxResult.Yes == MessageBox.Show("Are you sure", "delete user",
MessageBoxButton.YesNo, MessageBoxImage.Warning))
{
FTPdelete(imagePath, "Administrator", "commando");
Class1.DeleteStudent(selected);
Window_Loaded(null, null);
}
}
}
private void FTPdelete(String imagePath, String inUsername, String inPassword)
{
var req = (FtpWebRequest)WebRequest.Create(imagePath);
req.Proxy = null;
req.Credentials = new NetworkCredential(inUsername, inPassword);
req.Method = WebRequestMethods.Ftp.DeleteFile;
req.GetResponse().Close();
}
}
}
エラー私が取得:
インデックスが範囲外でした。負でなく、コレクションのサイズより小さくなければなりません。パラメータ名:インデックス
この行には:
string imagePath = dataGrid1.SelectedItems[6].ToString();
アイブ氏はまた、
var imagePath = dataGrid1.SelectedItems[6].ToString();
まだエラーが表示されません。インデックスが範囲外です。負でなく、コレクションのサイズより小さくなければなりません。 パラメータ名:index –
最新の回答、@Garrithを確認してください:) –