是否可以在Visual Studio 2012代码编辑区域中更改行之间的间距?在使用IntelliJ IDEA一段时间之后,我习惯了稍大的行间距(1.2),我想在VS12中实现相同的效果.为了比较,顶部是IDEA,线间间隔12像素,底部是VS12,间隔10像素:
我发现IDEA版本更容易阅读,即使它只是2px差异.有人知道吗?
我刚刚在Azure上创建了一个新的VM(使用Azure团队从图库中提供的图像)和即将在线出现的Visual Studio 2014的CTP版本,用于测试它,特别是使用新的C#6.0功能.
但是,它没有为开箱即用的C#6.0提供支持,因为没有语言扩展(主构造函数,属性初始化器,安全导航操作员)在那里工作.
MSDN上的博客条目建议将以下内容添加到项目设置中:
<LangVersion>Experimental</LangVersion>
Run Code Online (Sandbox Code Playgroud)
但这在我的控制台项目中没有任何改变.即使是第二个链接的示例代码也根本不编译.
我错过了什么吗?
Objective-c/cocoa提供了一种绑定形式,其中控件的属性(即文本框中的文本)可以绑定到对象的属性.我试图在C#w/.Net 3.5中复制此功能.
我在MyClass.cs文件中创建了以下非常简单的类:
class MyClass
{
private string myName;
public string MyName
{
get
{
return myName;
}
set
{
myName = value;
}
}
public MyClass()
{
myName = "Allen";
}
}
Run Code Online (Sandbox Code Playgroud)
我还创建了一个带有1个文本框和1个按钮的简单表单.我在表单代码中初始化了一个Myclass实例并构建了项目.使用Vs2008中的DataSource向导,我选择了基于对象创建数据源,并选择了MyClass程序集.这创建了一个数据源实体.我将文本框的数据绑定更改为此数据源; 但是,预期的结果(文本框的内容将是"allen")未实现.此外,将文本放入文本框不会更新对象的name属性.
我知道我在这里缺少一些基本的东西.在某些时候,我应该将我在表单代码中初始化的MyClass类的实例绑定到文本框,但是没有发生.我在网上看到的一切似乎都掩盖了使用DataBinding和一个对象(或者我完全没有标记),所以任何帮助都非常感激.
编辑:
利用我从答案中学到的东西,我查看了Visual Studio生成的代码,它具有以下内容:
this.myClassBindingSource.DataSource = typeof(BindingTest.MyClass);
Run Code Online (Sandbox Code Playgroud)
如果我评论出来并替代:
this.myClassBindingSource.DataSource = new MyClass();
Run Code Online (Sandbox Code Playgroud)
我得到了预期的行为.为什么VS生成的默认代码是这样的?假设这比工作方法更正确,我应该如何修改我的代码才能在VS生成的范围内工作?
如何使用VB.NET代码关闭监视器?好的,实际上我找到了C#解决方案.但我需要VB.NET解决方案.我尝试过在线C#到VB.NET转换器,但转换器抱怨它有错误.
如何将以下C#代码转换为VB.NET?
using System.Runtime.InteropServices; //to DllImport
public int WM_SYSCOMMAND = 0x0112;
public int SC_MONITORPOWER = 0xF170; //Using the system pre-defined MSDN constants that can be used by the SendMessage() function .
[DllImport("user32.dll")]
private static extern int SendMessage(int hWnd, int hMsg, int wParam, int lParam);
//To call a DLL function from C#, you must provide this declaration.
private void button1_Click(object sender, System.EventArgs e)
{
SendMessage( this.Handle.ToInt32() , WM_SYSCOMMAND , SC_MONITORPOWER ,2 );//DLL function
}
Run Code Online (Sandbox Code Playgroud)
更新:
我使用在线开发者Fusion转换器.
所以我已经使用 VS Code 有一段时间了,直到最近当我启动程序时,在几分钟内,我的整个计算机都死机了。我已经尝试重新安装它。我确保我有最新的更新,并且在导致此问题的日子里我最近没有安装任何扩展。
虽然它一直在冻结。即使在重新启动计算机并重新安装应用程序之后。我不知道是什么导致了这种情况,但我真的很喜欢 VS Code,并且不想切换到其他东西。
任何帮助当然非常感谢。谢谢!
我想从另一个类传递我的渲染器一些值.在渲染器计算了值之后,我在辅助类中有一个互斥锁,它应该告诉我渲染器已经完成计算,所以我可以继续使用这些新值.我可以毫无问题地传递渲染器的值,但我无法弄清楚如何让它们恢复.我目前使用一些静态变量,但在渲染器更改后,它们似乎迷路了.它们在我的其他课堂上不可见.例:
一类
public class View extends SurfaceView{
private void doSomething(){
glSurfaceView.queueEvent(new Runnable() {
@Override
public void run() {
//..
renderer.calculate(stack);
}
});
}
private void doAnotherThing(){
//Never happens:
if(Helper.hasCalculated){
/...
}
}
Run Code Online (Sandbox Code Playgroud)
}
在我的渲染器中:
public class MyRenderer implements GLSurfaceView.Renderer{
private void calculate(Stack stack){
Helper.hasCalculated = true
}
}
Run Code Online (Sandbox Code Playgroud)
我的助手班:
public class Helper{
public static volatile boolean hasCalculated = false;
}
Run Code Online (Sandbox Code Playgroud)
hasCalculated在渲染器中肯定设置为true,但我的其他类总是将其视为false.知道为什么吗?我最好的猜测是因为它在另一个线程中,但我该如何解决呢?如果有一个更清洁,更安全的方法,我会很高兴听到他.
为什么此代码会导致编译错误
类型不匹配; 发现:(Int,Char)必需:scala.collection.GenTraversableOnce [?]
?
val n = Map(1 -> 'a', 4 -> 'a')
def f(i: Int, c: Char) = (i -> c)
n.flatMap (e => f(e._1, e._2))
Run Code Online (Sandbox Code Playgroud) 我在我的应用程序中使用了库布局.当用户从左到右移动图库中的图片时它正在工作(它是无限的,意味着元素再次重复).但是当用户从右向左移动并到达第一个元素时,它不会.之后就没有元素了.但是我也要重复这一方面的要素.你能给我一些建议吗?
Gallery g = (Gallery) findViewById(R.id.gallery);
g.setAdapter(new ImageAdapter(this));
g.setFocusable(true);
g.setSelection((int)(Integer.MAX_VALUE / 2) - (Integer.MAX_VALUE / 2)% mImageIds.length);
g.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position, long id)
{
try {
imageid=position;
((ImageView)findViewById(R.id.ImageViewlarge)).setImageResource(mImageIds[position]);
((TextView)findViewById(R.id.TextViewImageName)).setText(imgNames[position]);
mp = MediaPlayer.create(SeaSpell.this,audioTrack[position]);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
}
Run Code Online (Sandbox Code Playgroud)
如何让我的画廊视图循环?我可以无限地从左到右进行,但是当我从右向左拖动时,它显示了终点.
我想序列化一个自定义Java对象,所以我可以SharedPreferences
用来存储它并在另一个Activity中检索它.我不需要持久存储,SharedPreferences
我在应用程序关闭时擦除它们.我目前正在使用GSON,但它似乎不适用于Android的SparseArray类型.
我的对象:
public class PartProfile {
private int gameId;
// Some more primitives
private SparseArray<Part> installedParts = new SparseArray<Part>();
// ...
}
public class Part {
private String partName;
// More primitives
}
Run Code Online (Sandbox Code Playgroud)
连载:
Type genericType = new TypeToken<PartProfile>() {}.getType();
String serializedProfile = Helpers.serializeWithJSON(installedParts, genericType);
preferences.edit().putString("Parts", serializedProfile).commit();
Run Code Online (Sandbox Code Playgroud)
serializeWithJSON():
public static String serializeWithJSON(Object o, Type genericType) {
Gson gson = new Gson();
return gson.toJson(o, genericType);
}
Run Code Online (Sandbox Code Playgroud)
反序列化:
Type genericType = new TypeToken<PartProfile>() {}.getType();
PartProfile parts = gson.fromJson(preferences.getString("Parts", …
Run Code Online (Sandbox Code Playgroud)