我最近在Windows 7上安装了Ruby 1.9.1,显然它没有附带标准的ri文档.所以,当我做'ri Array'时,我得到:
C:\>ri Array
Nothing known about Array
Run Code Online (Sandbox Code Playgroud)
有没有办法安装这个文档,以便上述工作?
我最近一直在学习(X)HTML和CSS,其中一个主要原则是HTML用于结构和CSS用于表示.
考虑到这一点,在我看来,大多数网站上的相当数量的图像仅用于呈现,因此应该在CSS中(使用div或span来将它们保存在HTML中) - 例如徽标,标题图像,背景.
然而,虽然我的书中的示例在CSS中放置了一些图像,但它们仍然经常出现在HTML中.(我只是在谈论'表现'图像,而不是'结构'图像,它们是内容的关键部分,例如照片网站中的照片).
所有这些图像都应该在CSS中吗?或者是否有技术或逻辑上的理由将它们保留在HTML中?
谢谢,格兰特
我正在学习F#,并且不小心写了无限递归函数.
当我通过Visual Studio(2010或2012)在F#Interactive(FSI)中调用它们时,除了重新启动Visual Studio之外,我找不到离开它的方法.还有其他 - 理想情况下更快 - 出路吗?
我正在尝试让我的第一个WPF应用程序使用MVVM,我遇到了一个小小的绑定问题.
设置是我有一个视图&viewModel,它保存用户详细信息(父级),并尝试保持简单,我将该视图的一部分放入一个单独的视图和viewModel(子).子视图定义为UserControl.
我遇到的问题是如何设置子视图的DataContext(UserControl).我的父ViewModel有一个公开子ViewModel的属性,如下所示:
class ParentViewModel: INotifyPropertyChanged
{
public ChildViewModel childViewModel { get; set; }
//...
}
Run Code Online (Sandbox Code Playgroud)
在我的父视图的XAML中(将其DataContext设置为ParentViewModel),我尝试设置子视图的DataContext,如下所示:
<views:ChildView
x:Name="ChildView"
DataContext="{Binding childViewModel}"/>
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用.子视图的DataContext设置为与父视图(即ParentViewModel)相同的DataContext,就像我根本没有设置它一样.我也尝试在子视图本身设置DataContext,这也不起作用:
<UserControl x:Class="DietRecorder.Client.View.ChildView"
DataContext="childViewModel"
Run Code Online (Sandbox Code Playgroud)
我找到了几种解决方法.在子视图中,我可以通过在路径中包含ChildViewModel来绑定所有内容:
<SomeControl Visibility="{Binding Path=childViewModel.IsVisible}">
Run Code Online (Sandbox Code Playgroud)
但我不希望子视图对层次结构有这种意识.在代码中设置DataContext也可以 - 但是,我必须在显示父视图后执行此操作,否则在调用Show()时DataContext会被覆盖:
parentView.Show();
parentView.ChildView.DataContext = parentViewModel.childViewModel;
Run Code Online (Sandbox Code Playgroud)
此代码也让我感到不安,LOD违规等等.
这只是DataContext似乎是问题 - 我可以绑定孩子中的其他东西,例如我尝试将FontSize绑定到int属性只是为了测试它:
<views:ChildView
x:Name="ChildView"
FontSize="{Binding Path=someVal}"/>
Run Code Online (Sandbox Code Playgroud)
这很好.
但我确信DataContext的绑定应该起作用 - 我已经看到了类似的这种事情的例子.我错过了一些明显的东西吗?有什么理由不行吗?某处有拼写错误吗?(为了你的利益我改名了,所以无论如何你都无法帮助我).
欢迎任何想法.
编辑
再次回顾这段代码,似乎我在某个地方犯了一个错误,因为父视图中的以下XAML现在似乎有效:
<views:ChildView
x:Name="ChildView"
DataContext="{Binding childViewModel}"/>
Run Code Online (Sandbox Code Playgroud)
我不确定为什么我不能让它最初工作,或者我可能已经改变它以使其工作.也许就像其中一个答案所暗示的那样是INotifyPropertyChanged问题.哦,好吧,向上和向上..
我见过的LOD描述(例如,Wikipedia,C2 Wiki)谈论的不是调用方法.引用维基百科:
函数的Demeter定律要求对象O的方法M 只能调用以下类型对象的方法:
- O本身
- M的参数
- 在M
-O的直接组件对象中创建/实例化的任何对象
- 全局变量可由O访问,在M的范围内
但是访问属性,变量或枚举呢?例如,鉴于此:
class FirstClass {
public SecondClass GetRelatedClass() {
return new SecondClass();
}
public enum InnerEnum {
Violated,
NotViolated
}
}
class SecondClass {
public int Property {get; set;}
public string _variable = "Danny Demeter";
}
Run Code Online (Sandbox Code Playgroud)
是否存在任何/所有LOD违规行为?(暂时忽略直接变量访问,如果可以..)
void Violate(FirstClass first) {
SecondClass second = first.GetRelatedClass();
var x = second.Property;
var y = second._variable;
var z = FirstClass.InnerEnum.Violated;
}
Run Code Online (Sandbox Code Playgroud)
我不会做前两个(无论是否是'官方'违规行为),但对于枚举不太确定.
我已经获得了用.Net CF 3.5编写的Windows Mobile应用程序来修复,其中一个问题与存储有关.
已经出现了几次"没有足够的存储空间可用于完成此操作"的消息 - 它已记录在SQL CE数据库中,并且始终在数据访问期间发生(但不是相同的数据访问位).
我有点困惑的是它是指程序存储器(例如RAM)还是存储存储器(例如永久存储器).它似乎是存储内存,但设备似乎有很多免费.虽然存在一些OutOfMemoryExceptions,但这些看起来与此问题完全无关(因为与图像相关的问题会在不同的时间发生).
我们将SQL CE 3.5与单个连接一起使用,该连接与应用程序一起存储在设备上(而不是存储卡).该设备是运行Windows Mobile 6.1的Motorola MC75.
有什么想法吗?
我最近开始学习Ruby,并且想知道要学习哪个版本.我有Matz的Ruby书,所以我对这些差异有所了解,默认情况下我会选择1.9因为性能,使用角色,而且因为学习很快就会过时的东西没什么意义!
但是,由于没有为1.9更新宝石,我在1.9.1中遇到了一些问题.我也想使用rcov进行编码器覆盖,这似乎是唯一的工具,但它不适用于1.9.我也刚刚阅读了这篇关于有人因为类似原因完全从Ruby转换的博文.
之前有人问过类似的问题,但现在几个月前,情况可能已经发生了变化.我目前没有对Ruby做任何具体的事情,但我计划很快编写一个Web应用程序,可能使用Rails,如果这有任何区别的话.
谢谢
我正在使用msbuild编译VB.Net 2.0应用程序(在VS2008中创建),现在我添加了一个泛型返回类型,它给了我以下内容:
警告:类型库导出器在签名中遇到泛型类型实例.通用代码可能无法导出到COM.
刚刚花了很长时间删除所有以前的警告,我真的不想添加一个新警告.知道怎么摆脱它(除了不使用泛型)?
我不知道我在属性中添加了哪些细节,或者在项目级忽略列表中放入了什么数字.