2016-09-13 4 views
-1

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

ONE.DisplayLayout.Override.FilterOperandStyle = FilterOperandStyle.FilterUIProvider 
ONE.DisplayLayout.Override.FilterUIType = FilterUIType.FilterRow 
ONE.DisplayLayout.Override.FilterUIProvider = New SupportDialogs.FilterUIProvider.UltraGridFilterUIProvider() 

TWO.DisplayLayout.Override.FilterOperandStyle = FilterOperandStyle.FilterUIProvider 
TWO.DisplayLayout.Override.FilterUIType = FilterUIType.FilterRow 
TWO.DisplayLayout.Override.FilterUIProvider = New SupportDialogs.FilterUIProvider.UltraGridFilterUIProvider() 

THREE.DisplayLayout.Override.FilterOperandStyle = FilterOperandStyle.FilterUIProvider 
THREE.DisplayLayout.Override.FilterUIType = FilterUIType.FilterRow 
THREE.DisplayLayout.Override.FilterUIProvider = New SupportDialogs.FilterUIProvider.UltraGridFilterUIProvider() 

Как вы можете видеть, единственное отличие состоит в один, два и три. Как упростить это, не повторяя?

Спасибо!

+1

Сделайте это функцией ... –

+0

Вы пробовали использовать 'Select Case'? – David

+0

Я бы использовал ключевое слово 'with' – romulus001

ответ

4

Я не знаю, что это тип один, два и три, но вы можете сделать суб:

Public Sub DoStuff(Data As YourType) 
    Data.DisplayLayout.Override.FilterOperandStyle = FilterOperandStyle.FilterUIProvider 
    Data.DisplayLayout.Override.FilterUIType = FilterUIType.FilterRow 
    Data.DisplayLayout.Override.FilterUIProvider = New SupportDialogs.FilterUIProvider.UltraGridFilterUIProvider() 
End Sub 

И вы называете это, делая

DoStuff(ONE) 
DoStuff(TWO) 
DoStuff(THREE) 

UPDATE (после комментарий Эндрю Мортона)

Если у вас есть более трех элементов, вы можете запустить цикл:

For each x In { ONE, TWO, THREE } 
    DoStuff(x) 
Next 
+0

Большое спасибо @SuperPeanut, я очень ценю вашу помощь! –

+0

@ChristopherHunt Если у вас есть больше, вы можете использовать цикл типа 'Для каждого x в {ONE, TWO, THREE}' 'DoStuff (x)' 'Next'. –

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