Удалить WizardPage из мастера dotnebar vb.net
Я использую dotnetbar
libray, я добавил одну страницу мастера во время разработки, а некоторые - во время выполнения, а затем - последнюю после того, как пользователь дошел до конца мастера, и я использовал команду для автоматического переключения на недавно (последнюю) созданную страницу мастера. Я использовал следующий код для удаления других страниц мастера, кроме текущей выбранной страницы.
Dim wiz As New DevComponents.DotNetBar.WizardPage 'pages
With wiz
.InteriorPage = True
.Name = "Summary"
.PageTitle = "Summary"
.PageDescription = "Details of the Summary."
.Controls.Add(lbl1)
.Controls.Add(lbl2)
.Controls.Add(lbl3)
.Controls.Add(lbl4)
.Controls.Add(lbl5)
.Controls.Add(lbl6)
.Controls.Add(gp)
End With
CBTWizard.WizardPages.Add(wiz)
CBTWizard.Refresh()
CBTWizard.SelectedPage = wiz
Dim c1 As Control
Dim c2 As Control
For Each c1 In CBTWizard.Controls
If TypeOf c1 Is DevComponents.DotNetBar.WizardPage Then
If c1.Name <> "Summary" Then
CBTWizard.WizardPages.Remove(c1)
End If
End If
CBTWizard.Refresh()
Next
Проблема: я хочу, чтобы мастер переставил так, чтобы он больше не отображал Back
Кнопка, вид обновления мастера, чтобы показать наличие только одной оставшейся страницы мастера.
1 ответ
Я получил обходной путь, вместо того, чтобы переставить порядок, я просто сделал кнопку "Назад", кнопку "Далее" непобедимой и отключил кнопку "Готово". Логический поток работал таким образом.
With wiz
.InteriorPage = True
.Name = "Summary"
.PageTitle = "Summary"
.PageDescription = "Details of Summary."
.Controls.Add(lbl1)
.Controls.Add(lbl2)
.Controls.Add(lbl3)
.Controls.Add(lbl4)
.Controls.Add(lbl5)
.Controls.Add(lbl6)
.Controls.Add(gp)
.FinishButtonEnabled = DevComponents.DotNetBar.eWizardButtonState.False
.BackButtonVisible = DevComponents.DotNetBar.eWizardButtonState.False
.NextButtonVisible = DevComponents.DotNetBar.eWizardButtonState.False
End With
Это я добавил только на последнюю созданную страницу мастера.