Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
399 / 318 / 53
Регистрация: 14.08.2014
Сообщений: 1,010

Перевод кода C# -> VB.NET

09.02.2018, 23:38. Показов 1662. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!

Ребят, есть метод:
C#
1
2
3
4
5
6
7
8
9
10
        private int Index(TabPage page)
        {
            for(int i = 0; i < TabPages.Count; i++)
            {
                if(TabPages[i] == page)
                    return i;
            }
 
            return -1;
        }
Переконвертировал его и шарпа в VB.NET:
VB.NET
1
2
3
4
5
6
7
8
    Private Function Index(ByVal page As TabPage) As Integer
        For i As Integer = 0 To TabPages.Count - 1
            If TabPages(i) = page Then
                Return i
            End If
        Next
        Return -1
    End Function
Всё один в один, но студия ругается:

Оператор "=" не определен для типов "TabPage" и "TabPage".

Почему в шарпе всё ок, а в бейсике аналогичная запись не катит?
И самое главное - как это можно пофиксить?

Буду благодарен за любую помощь.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.02.2018, 23:38
Ответы с готовыми решениями:

Перевод кода из C# в vb.net
блин ребят я тут помучался вроде какбы типо пытался перевести в vb.net но всегда все равно оставаались синтаксические ошибки помогите плиз...

Перевод кода с Pascal на VB .NET
Здравствуйте! Есть код на паскале: k=0 For i := length(s)To 1 k = k + 1 For i := length(s) To 1...

Перевод кода с JavaScript на VB .NET
Привет всем! Подскажите, пожалуйста, существует ли какой-то автоматический переводчик кода с Java-скрипт на VB .NET или на C# .NET ?...

9
Лень — мое второе и
 Аватар для Orlangur
3228 / 2416 / 687
Регистрация: 28.11.2014
Сообщений: 3,601
Записей в блоге: 3
10.02.2018, 00:03
Лучший ответ Сообщение было отмечено Дядя Корней как решение

Решение

Дядя Корней, попробуйте вместо = поставить is
1
Эксперт .NET
 Аватар для Rius
13114 / 7675 / 1674
Регистрация: 25.05.2015
Сообщений: 23,409
Записей в блоге: 14
10.02.2018, 00:06
Есть же готовый TabControl.TabPages.IndexOf(TabPage page)
1
399 / 318 / 53
Регистрация: 14.08.2014
Сообщений: 1,010
10.02.2018, 00:13  [ТС]
Orlangur1991, спасибо!
Ёлы-палы, я и забыл про is ))
0
34 / 20 / 4
Регистрация: 07.03.2015
Сообщений: 334
12.02.2018, 23:56
Посдскажите как это перевести в vb
C#
1
2
3
4
BeginInvoke(new MethodInvoker(delegate
{
// тут код
}));
конвертер мне сделал так
VB.NET
1
2
3
BeginInvoke(New MethodInvoker(
...
))
что такое BeginInvoke ? студия мне его подчеркивает

Добавлено через 6 минут
сам исходник вот нужен только делегат
C#
1
2
3
4
5
6
7
8
9
10
11
12
private void sortOutputHandler(object sendingProcess, DataReceivedEventArgs outLine)
{
    //используем делегат для доступа к элементу формы из другого потока
    BeginInvoke(new MethodInvoker(delegate
    {
        if (!String.IsNullOrEmpty(outLine.Data))
        {
            //выводим результат в консоль
            txtOutput.AppendText(outLine.Data + Environment.NewLine);
        }
    }));
}
0
 Аватар для XIST
1960 / 1070 / 148
Регистрация: 01.10.2009
Сообщений: 3,591
Записей в блоге: 1
13.02.2018, 07:38
Fakels, делегаты, а ошибка скорее всего указана в IS. Т.к. поток, нужно импортировать
Code
1
Imports System.Threading
1
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18285 / 14208 / 5368
Регистрация: 17.03.2014
Сообщений: 28,888
Записей в блоге: 1
13.02.2018, 14:22
Цитата Сообщение от Fakels Посмотреть сообщение
сам исходник вот нужен только делегат
VB.NET
1
BeginInvoke(New MethodInvoker(AddressOf UpdateOutput))
VB.NET
1
2
3
4
5
    Sub UpdateOutput()
        If Not String.IsNullOrEmpty(outLine.Data) Then
            txtOutput.AppendText(outLine.Data + Environment.NewLine)
        End If
    End Sub
Цитата Сообщение от Fakels Посмотреть сообщение
что такое BeginInvoke ? студия мне его подчеркивает
Метод класса Control - https://msdn.microsoft.com/en-... .110).aspx
Раз подчеркивает, то видимо ты не там код пишешь или BeginInvoke тебе не нужен на самом деле

Цитата Сообщение от XIST Посмотреть сообщение
Т.к. поток, нужно импортировать Imports System.Threading
Это ни при чем

Добавлено через 6 часов 14 минут
Fakels, вариант попроще с многострочным анонимным методом
VB.NET
1
2
3
4
5
BeginInvoke(Sub()
                If Not String.IsNullOrEmpty(outLine.Data) Then
                    txtOutput.AppendText(outLine.Data + Environment.NewLine)
                End If
            End Sub)
1
34 / 20 / 4
Регистрация: 07.03.2015
Сообщений: 334
13.02.2018, 17:25
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Раз подчеркивает, то видимо ты не там код пишешь или BeginInvoke тебе не нужен на самом деле
ага я потом разобрался что надо дописать контрол.
но что-то у меня не пошло дело, ошибку выдавало что-то там о создаваемом дескрипторе окна... и я забил болт)
вот отсюда брал код , задача была вывести в реалтайме сообщения поступаемые из консоли в винформ.
http://www.csharpcoderr.com/20... nform.html
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18285 / 14208 / 5368
Регистрация: 17.03.2014
Сообщений: 28,888
Записей в блоге: 1
13.02.2018, 17:47
Цитата Сообщение от Fakels Посмотреть сообщение
ошибку выдавало что-то там о создаваемом дескрипторе окна
Видимо ты пытался работать с элементом управления раньше чем он был создан ОС. Возможно из конструктора формы. Безопаснее это делать в событии Load или после него, но до закрытия формы.
0
 Аватар для XIST
1960 / 1070 / 148
Регистрация: 01.10.2009
Сообщений: 3,591
Записей в блоге: 1
13.02.2018, 20:41
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Это ни при чем
а да, забудьте, что написал, чет мне с утра потоки мерещатся
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.02.2018, 20:41
Помогаю со студенческими работами здесь

Перевод кода C# -> VB.NET (подписка на событие)
Всем привет! Мужики, может кто-то понятным языком объяснить, как это работает? И как это можно переписать на VB.NET? ...

Перевод кода из VB.Net в C#
Есть код на VB.Net позволяющий проводить шифрование и дешифровку файла. Помогите пожалуйста адаптировать его к C#. Моих познаний не...

Перевод кода из VB.NET
Нашел программу и конвентор перевел код и вот как было &lt;DllImport(&quot;Kernel32.dll&quot;)&gt; Private Shared Function GetCurrentProcess() As...

Перевод кода из Delphi в PascalABC.net
Кто может перевести этот код? Заранее спасибо procedure TForm10.Button7Click(Sender: TObject); const many: array of Integer =...

Перевод кода PascalABC.NET в код С#
Program z1; const Nmax=50; type massiv=array of integer; var K, A, B, i, min, max:integer; mas:massiv; begin //Ввод...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru