Как передать параметр в инструкцию как метод. У меня есть метод, как этот я пытаюсь стимулировать тройной оператор в C# в vb.net без использования IIF ключевого словаКак передать метод в качестве параметра действия
Protected Friend Sub TernaryOperater(ByVal condition As Boolean, _
ByVal truePart As action, Optional ByVal falsePart As action = Nothing)
If condition Then
truePart()
Else
falsePart()
End If
End Sub
и я называю этот метод следующим образом:
TernaryOperater(DataGridView1.Rows.Count > 0, _
tp21txtBillNo.Clear, tp21txtBillNo.focus)
Он показал красный цвет ошибки по заявлению tp21txtBillNo.clear
и tp21txtBillNo.focus
. Action
не поддерживается в таких заявлениях?
(Смотрит как для C# и VB.Net варианты)
Как точно она не работает? – Chris
Кстати, это уже существует в VB.NET, это функция 'Iif': https://msdn.microsoft.com/en-us/library/27ydhh0d%28v=vs.90%29.aspx. VB2008 также представляет краткосрочную версию, замыкающий оператор 'If (c, t, f)', который работает аналогично, но лучше. – Dai
Похоже, вы просто хотите использовать оператор 'If' - вы ничего не возвращаете от своего« оператора ». Предполагается, что условный оператор используется как выражение, а не оператор. – Blorgbeard