标签: sharpdevelop

从VB转换为C#

我的任务是将解决方案从VB转换为C#.有22个项目和数百个课程,所以我决定研究转换器.我最终选择了SharpDevelop,这是一个带有转换器的IDE.我在每个项目上运行它,并且有很多错误需要修复,但是我应该能够通过它们并希望能够解决它们.我遇到的主要问题是摘要日志.我有数百行各类阅读:

-- line 0 col 0: Case labels with binary operators are unsupported : Equality
-- line 0 col 0: Case labels with binary operators are unsupported : Equality
-- line 0 col 0: Case labels with binary operators are unsupported : Equality
-- line 0 col 0: Case labels with binary operators are unsupported : Equality
-- line 0 col 0: Case labels with binary operators are unsupported : Equality
Run Code Online (Sandbox Code Playgroud)

我已经看了这个,但我没有找到一个很好的解释,它的真正含义或如何纠正它.我发现的大多数是注释代码行,如下所示:

// ERROR: Case labels with binary operators are …
Run Code Online (Sandbox Code Playgroud)

.net c# vb.net sharpdevelop converter

5
推荐指数
2
解决办法
552
查看次数

Visual Studio与#Develop - 默认事件处理程序

Visual Studio和SharpDevelop都没有设置委托来以相同的方式处理事件.它们的设置方式略有不同.这使得很难在一个地方使用VS而在另一个地方使用#Develop(在同一个项目中).

例如,在VB中,Visual Studio执行以下操作:

Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click
    Me.DialogResult = System.Windows.Forms.DialogResult.OK
    Me.Close()
End Sub
Run Code Online (Sandbox Code Playgroud)

而......

Friend WithEvents OK_Button As System.Windows.Forms.Button
Run Code Online (Sandbox Code Playgroud)

因此,声明控件,不仅具有不同的范围(这也可能是一个问题,但不是这篇文章的主题),但是有一个问题.然后,handle子句将事件处理程序分配给它.

在#Develop中,它是这样完成的......

Sub OK_ButtonClick(sender As Object, e As EventArgs)

End Sub
Run Code Online (Sandbox Code Playgroud)

和......

Private button1 As System.Windows.Forms.Button
Run Code Online (Sandbox Code Playgroud)

然后,在InitializeComponent方法中

AddHandler Me.button1.Click, AddressOf Me.OK_ButtonClick
Run Code Online (Sandbox Code Playgroud)

关于这一点最烦人的事情是,即使它以一种方式完成,另一种ide将重做它,具有重复声明,当然还有编译时错误.

有没有人知道解决这个问题的方法,某种方式来自定义默认处理程序?即使它只是某种方式可以关闭它们,所以它可以手动输入?

.net vb.net sharpdevelop visual-studio

4
推荐指数
1
解决办法
1105
查看次数

AvalonEdit WPF TextEditor(SharpDevelop):如何突出显示特定范围的文本?

令人难以置信的令人敬畏的AvalonEdit WPF TextEditor控件似乎缺乏一个重要的功能,或者至少我无法弄明白.给定偏移量和长度,使用HighlightColor突出显示TextDocument中的该部分.简单吧?

显然不是.我有RTFM,关于"语法突出显示"的文档让我更加困惑.有人在SharpDevelop论坛上问了同样的问题,我恐怕无法理解Herr Grunwald的回答.

这是我的尝试,使用DocumentHighlighter类(当然它不起作用):

    textEditor1.Text = "1234567890";

    HighlightingColor c = new HighlightingColor() { FontWeight = FontWeights.ExtraBold };

    DocumentHighlighter dh = new DocumentHighlighter(textEditor1.Document, new HighlightingRuleSet());
    HighlightedLine hl = dh.HighlightLine(1);

    hl.Sections.Add(new HighlightedSection() { Color = c, Offset = 1, Length = 3 });
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮忙!

.net c# wpf sharpdevelop avalonedit

4
推荐指数
3
解决办法
9357
查看次数

如何在SharpDevelop 4.2中启动国际化的WPF项目?

我想创建一个软件,用户可以在几种语言之间进行选择.

作为一个开始,我想学习如何处理国际化,因为我以前从未这样做过.

作为IDE我使用SharpDevelop或#develop,但你会拼写它.我想使用C#和WPF,因为我现在也在学习XAML/WPF.

所以我在ShardDevelop中创建了一个新的WPF项目.在主窗口上,我创建了一个ComboBox和一个TextBlock.

ComboBox获得两个条目:"德语"和"英语".textBlock应该显示"Hallo Welt!" 或"Hello World!",具体取决于所选的语言.

现在是我陷入困境的部分.我想每种语言都是XML/XAML-Style(有道理)的单独文件.这些文件在哪里以及如何加载它们及其内容以便加载所选语言的文本?

我发现了几个例子,但都是一些关于创建资源的DLL,并使用一些奇怪的程序进行反编译它们放回一个CSV文件......我不明白,是不是有一个更简单的方法?


我采取了下一步.现在通过"{StaticResource Strings.MainForm.hwText}"加载TextBlock的Text.它现在看起来像这样:

<TextBlock Text="{StaticResource Strings.MainForm.hwText}" />
Run Code Online (Sandbox Code Playgroud)

我还为德语创建了一个ResourceDictionary,为英语创建了一个ResourceDictionary,它们都定义了我在TextBlock中使用的键.

在Application.Resources Part i中,默认情况下加载一个ResourceDictionary.

现在的问题是:如何在运行时"卸载"这个词典并将其替换为另一个词典?

当然我使用ComboBox的SelectionChange-Event,但我在那里做什么?


问题解决了!!感谢kmatyaszek

虽然我根据我的需要改变了事件处理程序的代码:

Uri baseUri = new Uri(AppDomain.CurrentDomain.BaseDirectory);
Uri uri = new Uri(baseUri,"Languages\\lang."+((sender as ComboBox).SelectedItem as ComboBoxItem).Tag.ToString()+".xaml");
if(File.Exists(uri.LocalPath) || File.Exists((uri = new Uri(baseUri,"Languages\\lang.de-DE.xaml")).LocalPath)){
    ResourceDictionary dict = new ResourceDictionary();
    dict.Source = uri;
    this.Resources.MergedDictionaries.Add(dict);
}
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml sharpdevelop internationalization

4
推荐指数
1
解决办法
2931
查看次数

您是否建议使用SharpDevelop在Linux上试用C#?

我要在我的Linux机器上尝试C#.您是推荐SharpDevelop作为我的IDE还是仅仅是Notepad +编译器?

c# linux sharpdevelop

3
推荐指数
1
解决办法
5746
查看次数

SharpDevelop:即使安装了f#,也找不到"找不到fsi.exe"

我在我的机器上(在辅助驱动器上)安装了f#的副本,当我尝试启动F#交互式提示时,它说它找不到fsi.exe.我需要在某处或某些地方复制某些文件吗?

f# sharpdevelop

3
推荐指数
1
解决办法
2870
查看次数

在ICSharpCode文本编辑器中选择文本

我试图在ICSharpCode TextEditor中选择文本行.以及使文本框转到特定行.该应用程序是在Windows 2010中使用C#构建的Windows窗体应用程序.

我使用文本编辑器的原因是代码突出显示和行号等.

我真的没有太多使用Windows窗体的经验,所以任何帮助将不胜感激.我的守则如下:

textEditorControl.Text = "long file string with line breaks";
textEditorControl.VRulerRow = 10; //Example row selection
Run Code Online (Sandbox Code Playgroud)

c# sharpdevelop winforms

3
推荐指数
1
解决办法
3513
查看次数

VB.net整数计数错误

所以我正在学习VB.NET,我有点这个新手问题,我无法在网络上的任何地方找到答案.

该程序

这个程序应该是反制的.每次单击该按钮时,标签都应该更新.这是每次单击按钮时我的MouseClick Listener代码:

Sub Button2MouseClick(sender As Object, e As MouseEventArgs)
    Dim starter As String
    Dim int1 As Integer 
    Dim int2 As Integer 
    Dim ender As String
    starter =label2.Text
    int1 = CInt(starter)
    int2 = (int1 + 1)
    ender = CStr(int2)
    label2.Text = ender
End Sub
Run Code Online (Sandbox Code Playgroud)

该计划有效,但这是问题所在.它只能工作到9号.一旦它应该显示"10"只是显示1,当它应该显示11,12,13,14,15,16,17,18和19时,它只显示"1"(第一个数字).

.net vb.net sharpdevelop winforms

3
推荐指数
1
解决办法
903
查看次数

sharpdevelop,asp.net和运行/调试吗?

我在sharpdevelop中创建了一个asp.net项目.我想开始看看如何调试,我已经被卡住了.我如何运行ASP.NET项目?它只是说它配置为DLL.我如何将其作为网页启动.我看到"在网址中启动浏览器",但我如何在网页中获取代码或者我用它来做什么?也可以像我在MSVS中那样调试吗?

asp.net sharpdevelop

2
推荐指数
1
解决办法
6039
查看次数

如何在SharpDevelop中查看控制台?

在此输入图像描述

在SharpDevelop中编译Windows应用程序时如何写入控制台?我想看看在某种方法中生成哪些随机数用于调试目的.

c# debugging console sharpdevelop

2
推荐指数
1
解决办法
4944
查看次数