2010-02-09 4 views

ответ

3

Сначала я думал, что вам нужен веб-ретранслятор, но из ваших комментариев я понял, что вы имеете в виду Microsoft.VisualBasic.PowerPacks.DataRepeater.

Мне нужна дополнительная информация от вас, чтобы дать наиболее полезный пример кода (см. Ниже).

Основные этапы использования DataRepeater являются:
1) Установка Visual Basic Power Packs 3 Link
2) Открыть проект VB.NET Winforms и перетащить DataRepeater в форму
3) Добавить новый Dataset в свой проект через Add-> New Item меню
4) в окне проекта, настроить столбцы по желанию
5) Откройте окно Источники данных из dATA- меню> ShowDataSources
6) с вашей формы в режиме разработки, перейдите в «Набор данных» в окне «Источники данных» и используйте d ropdown рядом с именем таблицы, чтобы выбрать «Подробности»
7) Перетащите таблицу в верхнюю часть элемента управления DataRepeater (в вашей форме). Теперь поля таблицы должны быть указаны в вашем DataRepeater. Вы можете перемещать их.
8) Во время выполнения вы можете загрузить Datset, и DataRepeater автоматически отразит изменения данных. Нет. Требуется привязка данных
ex.

me.DataSet1.Tables(0).Columns.Add(New String() {"John", "Doe", "Accountant"} 

или

myDataAdapter.Fill(me.DataSet1.Tables(0)) 

ли Вас споткнулся на любой из этих шагов?


Edit:

Из того, что я видел, это выглядит как DataRepeater предназначен для использования в ситуациях, были добавить/Сопоставьте DataTable к DataRepeater во время разработки. Затем все, что вам нужно сделать, это заполнить данные во время выполнения, и DataReader автоматически отобразит данные.

Если вы действительно хотите добавить таблицу/элементы управления в DataRepeater во время выполнения, вот пример, который я закодировал для вас. Он принимает форму с именем Форма Form3 с DataRepeater именем DataRepeater1 и кнопку с именем Button1 ...

Public Class Form3 

    ''Set up demo DataSet/DataTable 
    Const FRUIT_COL As String = "Fruit" 
    Const COLOR_COL As String = "Color" 
    MyDataSet = New DataSet 
    MyDataSet.Tables.Add("MyTable") 
    With MyDataSet.Tables(0) 
     .Columns.Add(FRUIT_COL, GetType(System.String)) 
     .Columns.Add(COLOR_COL, GetType(System.String)) 
    End With 

    ''Populate the DataTable with sample data. You would be loading from SQL 
    With MyDataSet.Tables(0) 
     .Rows.Add(New String() {"Apple", "Red"}) 
     .Rows.Add(New String() {"Orange", "Orange"}) 
     .Rows.Add(New String() {"Banana", "Yellow"}) 
    End With 

    ''These objects would normally be created automatically if you added DataTable to DataRepeater at design-time 
    FruitLabel = New Label 
    FruitTextBox = New TextBox 
    ColorLabel = New Label 
    ColorTextBox = New TextBox 
    With FruitLabel 
     .AutoSize = True 
     .Location = New Point(10, 20) 
     .Name = "FruitLabel" 
     .Text = FRUIT_COL 
    End With 
    With ColorLabel 
     .AutoSize = True 
     .Location = New Point(10, 60) 
     .Name = "FruitLabel" 
     .Text = FRUIT_COL 
    End With 
    With FruitTextBox 
     .Location = New Point(50, 20) 
     .Size = New Size(60, 15) 
     .DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.MyDataSet.Tables(0), FRUIT_COL, True)) 
    End With 
    With ColorTextBox 
     .Size = New Size(60, 15) 
     .Location = New Point(50, 60) 
     .DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.MyDataSet.Tables(0), COLOR_COL, True)) 
    End With 

    ''Add the controls that will be displayed for each row in DataTable 
    With DataRepeater1 
     .ItemTemplate.Controls.Add(FruitLabel) 
     .ItemTemplate.Controls.Add(FruitTextBox) 
     .ItemTemplate.Controls.Add(ColorLabel) 
     .ItemTemplate.Controls.Add(ColorTextBox) 
    End With 

    ''Run-time population of DataRepeater from your DataTable 
    DataRepeater1.DataSource = MyDataSet 
    DataRepeater1.DataMember = MyDataSet.Tables(0).TableName 

End Sub 

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
    'Example of how you can add additional rows with form elements 
    With MyDataSet.Tables(0) 
     .Rows.Add(New String() {"Grapes", "Green"}) 
    End With 
End Sub 
End Class 

Теперь, когда вы увидели код, я надеюсь, что вы не используете его :)
Я предлагаю вам либо настройте структуру DataSet во время разработки или используйте другой элемент управления для отображения ваших данных.

Вот ссылка, которая имеет много информации о типичных способах использования DataRepeater: Link

Final Редактировать

последней ошибкой Абонентской была проблемой чувствительности к регистру. Строка «Текст» в следующей строке кода должна быть заглавной, чтобы соответствовать имени свойства элемента управления.Я рекомендую создать const для «Test», чтобы избежать этой опечатки.

[ControlName].DataBindings.Add(New System.Windows.Forms.Binding("Text", [DataTable], [Column Name], True)) 
+0

ищет пример кода. И в vb.net. Я не знаю ничего о aspx. Я знаю, как это будет выглядеть в дизайнере, но я хочу сделать это в коде. – Linda

+0

Просто, чтобы уточнить, это для Winforms (настольного) или веб-приложения? Вам просто нужно закодировать для загрузки данных в DataRepeater или вы ищете код, который создает DataRepeater во время выполнения и вставляет его в форму? – bluecoder

+0

Winform. Необходим код для подключения данных к ретранслятору. – Linda

1
Dim data As DataSet 
DataRepeater1.DataSource = data 
DataRepeater1.DataBind() 
+0

, когда я набираю DataRepeater1.DataBind(): DataBind не является членом Microsoft.VisualBasic.PowerPacks.DataRepeater – Linda

+0

Я использовал бы другой контроль данных вместо DataRepeater, посмотрите на вкладке «Данные» на вкладке «Управление» – Adir

+0

Не знаю почему. Но для меня я знаю, что хочу использовать Datarepeater. – Linda

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