это мой первый пост.Я новичок в C # WPF, поэтому я могу быть совершенно не в себе.Я в основном пытаюсь создать сетку данных, которая действует как электронная таблица, так что, когда пользователь вводит сумму, например.10 * 10, в CellEditEnding он будет показывать ответ в ячейке, как Excel.
У меня есть сетка 6x6, привязанная к пустой ObservableCollection, и когда пользователь вводит 10 * 10, я пытаюсь взятьстроку, которую они ввели, разделить ее, а затем использовать части для создания расчета, но в ту минуту я не могу получить строку из ячейки.Расчет работает, когда я устанавливаю строку непосредственно в коде.
Любая помощь будет очень полезна.Возможно, есть более простой способ сделать это.
public partial class MainWindow : Window
{
ObservableCollection<DataCell> spreadsheet = new ObservableCollection<DataCell>();
public MainWindow()
{
//Communal Spreadsheet
InitializeComponent();
spreadsheet.Add(new DataCell("", "", "", "", "", ""));
spreadsheet.Add(new DataCell("", "", "", "", "", ""));
spreadsheet.Add(new DataCell("", "", "", "", "", ""));
spreadsheet.Add(new DataCell("", "", "", "", "", ""));
spreadsheet.Add(new DataCell("", "", "", "", "", ""));
spreadsheet.Add(new DataCell("", "", "", "", "", ""));
spreadsheet.Add(new DataCell("", "", "", "", "", ""));
spreadsheet.Add(new DataCell("", "", "", "", "", ""));
dataGrid2.ItemsSource = spreadsheet;
}
private void dataGrid2_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
{
// I want to get the current cell value using the below
// string myString = dataGrid1.CurrentItem.ToString();
// the calculation seems to work with this when i pass it to textbox1 and set the myString Variable in the code.
string myString = "10 * 10";
string[] parts = myString.Split(' ');
int part1 = int.Parse(parts[0]);
// string part2 = parts[1];
int part3 = int.Parse(parts[2]);
int answer = part1 * part3;
string answer2 = answer.ToString();
// dataGrid2.CurrentItem = answer2;
// seems to work when i pass to the below textbox instead of back to the cell above
textBox1.Text = answer2;
}
}
}