从drupal.stackexchange.com复制,希望在这里获得更多答案:
我面临一个相当普遍的问题,即显示类似于当前节点的节点列表.类似节点被定义为具有当前节点具有的至少一个分类术语的节点.作为模块提供的解决方案很少,但是我发现的模块(特别是按术语相似)对于Drupal 7处于测试阶段(如"不能正常工作").
我还发现了一些基于视图和上下文过滤器的解决方案(例如http://scito.ch/content/show-related-nodes-block-based-taxonomy-terms-views-3-and-drupal- 7)或关系.我很喜欢,因为它为我节省了安装额外的模块,并查看正在积极开发和支持我宁愿使用他们,而不是任何自定义解决方案这种方式.我无法解决的问题是如何按照他们共享的术语数量对"类似节点"进行排序.例如,如果我的"IPhone 4S"节点带有术语"小工具","Apple"和"电话",我希望按以下顺序使用类似的节点:
如何根据共享的术语数量对此视图中的节点进行排序?
这个问题是关于构建视图,请不要建议模块或基于php的自定义解决方案.谢谢.
我正在创建Windows应用程序和类库.类库包含名为"InsertForm.xaml"的WPF控件
InsertForm包含名为eUserName的TextBox.
我正在使用以下代码来显示InsertForm.那是成功的.但我无法访问eUserName.如何将Textbox修饰符设置为public?
using System.Windows.Forms.Integration
ElementHost host = new ElementHost();
iform= new Extender.InsertForm();
host.Child = iform;
this.Controls.Add(host);
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用自定义异常类型执行一些序列化/反序列化的东西.此类型的字段定义为:
private object[] resourceMessageParams;
Run Code Online (Sandbox Code Playgroud)
我有一些很好的和强类型的代码与一些Linq表达魔术,但我想更进一步,并做这样的事情:
using ResourceMessageParamsType = object[];//<-- "Identifier expected" error here
/*...*/
private ResourceMessageParamsType resourceMessageParams;
/*...*/
this.resourceMessageParams =
(ResourceMessageParamsType)serializationInfo.GetValue(
ReflectionHelper.GetPropertyNameFromExpression(() =>
resourceMessageParams), typeof(ResourceMessageParamsType));
Run Code Online (Sandbox Code Playgroud)
而不是这个:
(object[])serializationInfo.GetValue(
ReflectionHelper.GetPropertyNameFromExpression(() =>
resourceMessageParams), typeof(object[]));
Run Code Online (Sandbox Code Playgroud)
为了适应将来可能更改此字段的类型,因此必须在别名定义中仅更改一次类型.但是,编译器停止在object中using ResourceMessageType = object[];抱怨的标识符的预期.更改为Object[]有所帮助,但这次括号突出显示相同的错误消息.
有没有办法在c#中为数组类型定义别名?
如果我使用dragMove,wpf窗口将不会移动到y值为负的位置.但是,我可以将窗口顶部值设置为负值.有没有一种简单的方法可以让dragMove允许窗口顶部移动到显示0位置上方?
编辑:
看来这是默认窗口对moveWindow的处理.通过调用SendMessage验证(hwnd,WM_SYSCOMMAND,SC_MOVE,null);
除了在鼠标/键向上/向下事件处理程序中设置多个标志之外,还有一种简单的方法可以告诉触发按钮的Click事件吗?我目前只对区分鼠标和其他所有东西感兴趣,但如果可能的话,处理Stylus和其他输入类型会很好.我是否必须创建自己的按钮控件才能实现此目的?
编辑:澄清我关心的原因:在这种特殊情况下,我正在尝试为某种图片查看器实现"下一步"和"上一页"按钮.有问题的图片可能大小不同,按钮的位置也会改变(因此它们总是位于图片下方).如果你需要滚动几张图片,用鼠标按下这样的按钮是非常讨厌的,所以我想让鼠标位置相对于点击的按钮保持不变,但只有当它被鼠标而不是键盘点击时.
编辑2:按钮位于顶部还是底部都无关紧要,因为无论如何中心都可以改变."图片浏览器"这里只是一个抽象概念,在这个特殊情况下,对我来说重要的是图片的左上角保留了它的位置,但是详细的问题超出了问题的范围.在这种应用程序中缩放图片并不是那么简单,所以我想知道我要求不进入UI实现讨论的问题的答案.
我可能在这里遗漏了一些明显的东西,因为这是其他OOP语言的基本功能,但是我在用PHP的方式来解决这个问题。我了解PHP不是“真正的” OOP语言,但仍然...
我要做的是将实例化为派生类的对象转换为基类。类似于以下内容:
class Some{}
class SomeMock extends Some {}
function GetSomeMock(){
$mock = new SomeMock();
return (Some)$mock; //Syntax error here
}
Run Code Online (Sandbox Code Playgroud)
我已经发现了一些问题,这些问题带有将基类的对象向下转换为派生类的奇怪请求,这可以通过一些讨厌的调整来实现,但是这种基本功能不必那么困难。我在这里想念什么?
编辑:看来,要达到的目标总是很重要。没问题。GetSomeMock()是一种工厂方法,它将返回带有预期属性值的模拟对象存根(从基类派生,所有属性都在构造函数中预先填充)。然后,我将其与从数据库还原的另一个基本类型的对象进行比较:
$this->assertEquals($mockObject, $realObject);
Run Code Online (Sandbox Code Playgroud)
由于$ mockObject和$ realObject是不同类型,因此此操作立即失败。我可以想象有很多解决方法可以实现,但是我想让事情尽可能简单。