2016-01-22 3 views
-3

Я генерирую динамическое динамическое отображение из разных значений, например. список и привязать его к radgridview.Переместить значения из одного столбца в другой в datatable

Пожалуйста, обратите внимание ниже вход (отображаемый в radgridview)

col1|col2 
--------- 
A | D 
A | D 
B | D 
B | E 
C | E 
D | 

выше выход является неправильным, так как D в двух столбцах т.е. col1 и col2.

Я хочу выход в формате ниже.

col1|col2 
--------- 
A | D 
A | D 
B | D 
B | D 
C | E 
    | E 

см. Выше выход сетки, т. Е. Теперь D перемещается в другой столбец, чтобы следовать последовательности. Точно так же я хочу переместить значения между столбцами, что независимо от слов, но «начиная с одной буквы» должно находиться под одним столбцом.

Может ли кто-нибудь помочь мне с этим. Любой код C# или vb.net может помочь.

Обращаем ваше внимание, что datatable может иметь n нет. столбцов и строк, генерируемых динамически.

+0

Столбцы в RadGrid предназначены для столбцов данных, аналогичных столбцам в базе данных SQL. Они не предназначены для этого использования. Для этого вам может понадобиться рассмотреть некоторые другие элементы управления (или несколько элементов управления RadGrid). –

ответ

0

Некоторые псевдокод (в C#) может быть:

String sql = String.Empty; 
String candidateDataValue = // assign it from wherever 
if ((candidateDateValue.StartsWith('A') || 
    (candidateDateValue.StartsWith('B') || 
    (candidateDateValue.StartsWith('CA')) 
{ 
    String sql = "INSERT INTO TABLE (col1) VALUES (:candidateDataValue"); 
} 
else 
{ 
    String sql = "INSERT INTO TABLE (col2) VALUES (:candidateDataValue"); 
} 
// Now insert the record using "sql" 
0

Вы пытаетесь вставить и отсортировать значения в столбце?

Я думаю, что вы используете неправильную структуру данных для этого. DataTable следует использовать для «таблиц».

Я считаю, что вы должны создать класс с объектом List<List<string>>. Он будет иметь поведение, которое вы хотите. Удаление из одного столбца, добавление к другому и сортировка всего списка.

List<List<string>> Table; 

//Table Filled with 
col1|col2 
--------- 
A | D 
A | D 
B | D 
B | E 
C | E 
D | 

var str = Table[0][5]; 
Table[0].removeAt[5]; 
Table[1].add(str); 
Table[1].Sort(); 

Результат:

col1|col2 
--------- 
A | D 
A | D 
B | D 
B | D 
C | E 
    | E 

Update:

Если вам нужен DataTable объект, чтобы заполнить какую-то собственность. Вы можете создать функцию синтаксического анализа для создания DataTable с использованием параметра List< List<string> > в качестве параметра.

+0

@Yogesh Sanchania это сработало для вас? – EduLopez

Смежные вопросы