问题列表 - 第44266页

将 XAML 形状绘制到 DrawingContext?

我有几个由 WPF 形状基元组成的常见符号(例如矩形、直线、路径等)。这些符号当前作为用户控件存储在 xaml 文件中。例如:

<Canvas x:Name="Symbol" Width="100" Height="100">
    <Rectangle x:Name="Rectangle" Width="100" Height="100" Stretch="Fill">
        <Rectangle.Fill>
            <SolidColorBrush Color="Aqua"></SolidColorBrush>
        </Rectangle.Fill>
    </Rectangle>
</Canvas>
Run Code Online (Sandbox Code Playgroud)

上面是一个简单的例子,但我的大多数符号都比较复杂,由许多不同的部分组成。因此,我希望使用这些用户控件来存储符号并使它们易于操作。

我正在 Canvas 的 OnRender 方法中进行大量绘图,并希望在绘图中包含其中一些复合符号。是否可以将它们转换为某种格式以将它们绘制到 DrawingContext?我知道有一个名为 DrawingContext.DrawImage 的方法,但这需要 ImageSource 作为输入。

任何想法将不胜感激。

谢谢,艾伦

c# wpf xaml user-controls drawing

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

iPhone - modalViewController版本

我试图找到释放模态视图控制器的正确方法.

基本上,我有视图控制器,按下按钮后显示模态视图(全屏).

TipViewController * tipViewController = [[TipViewController alloc] init];
tipViewController.delegate = self;
[self presentModalViewController:tipViewController animated:YES];   
Run Code Online (Sandbox Code Playgroud)

然后,在模态视图中应该被解雇时我打电话给:

[self.delegate didDismissModalView];
Run Code Online (Sandbox Code Playgroud)

最后,父控制器的didDissmissModalView方法如下:

- (void)didDismissModalView 
{
    // dismiss the modal view controller
    [self dismissModalViewControllerAnimated:YES];
}
Run Code Online (Sandbox Code Playgroud)

(我使用ModalViewControllerDelegate协议,这需要实现该方法).

首先我认为我应该在父控制器的dealloc方法中释放tipViewController:

- (void)dealloc 
{
    [tipViewController release];
}
Run Code Online (Sandbox Code Playgroud)

但后来我看到,它可能是错误的方式,因为模态视图控制器可能会在父控制器关闭之前多次呈现和解除,并且每次它将被分配但最终只被释放一次.

那么也许我应该在呈现之后发布tipViewController?

TipViewController * tipViewController = [[TipViewController alloc] init];
tipViewController.delegate = self;
[self presentModalViewController:tipViewController animated:YES];
[tipViewController release];
Run Code Online (Sandbox Code Playgroud)

我可以这样做,虽然现在显示模态视图?

或许我应该以这种方式发布模态视图:

- (void)didDismissModalView 
{
// dismiss the modal view controller
    [self dismissModalViewControllerAnimated:YES];
    [self.modalViewController release];
}
Run Code Online (Sandbox Code Playgroud)

假设self.modalViewController现在与tipViewController相同?

iphone release modalviewcontroller

0
推荐指数
1
解决办法
1088
查看次数

通过排序数据获得不同的值

我需要一个Query来获取不同的密钥,并根据Mongodb 1.6.5中的分数进行排序

我有唱片喜欢

{key ="SAGAR"
score =16
note ="test1"
}

{key ="VARPE"
score =17
note ="test1"
}

{key ="SAGAR"
score =16
note ="test2"
}

{key ="VARPE"
score =17
note ="test2"
}
Run Code Online (Sandbox Code Playgroud)

我需要一个查询,对得分上的所有记录进行排序,并返回给我不同的密钥......

sorting mongodb distinct-values

14
推荐指数
2
解决办法
3万
查看次数

ASP.NET MVC,Nhibernate和小型/中型项目的存储库

我目前正在开发一个小型的ASP.NET MVC项目.
我试图实现Nhibernate持久化MS Sql Server数据库.花了很长时间研究DDD和互联网上发现的其他项目后,我决定采用存储库模式.现在我面临着两难的局面.
使用Nhinbernate时是否真的需要存储库?
拥有一个与Nhinbernate交互的服务层(我目前没有服务层)不是更好,避免写多次这样的事情:

public Domain.Reminder GetById(Guid Code)
{
    return (_session.Get<Domain.Reminder>(Code));
}

public Domain.Reminder LoadById(Guid Code)
{
    return (_session.Load<Domain.Reminder>(Code));
}

public bool Save(Domain.Reminder Reminder)
{
    _session.SaveOrUpdate(Reminder);
    return (true);
}

public bool Delete(Domain.Reminder Reminder)
{
    _session.Delete(Reminder);
    return (true);
}
Run Code Online (Sandbox Code Playgroud)

我找到了一个旧的Ayende的POST,这是针对存储库的.
我知道围绕这些主题有一个很大的争论,答案总是......依赖,但在我看来,由于抽象层次过多,事情变得更加复杂,难以理解.
我错了吗?

nhibernate asp.net-mvc repository-pattern

5
推荐指数
1
解决办法
1220
查看次数

仅在循环中运行if语句一次

只是好奇它是否可能.考虑以下代码:

boolean firstRow = true;

while{row = result.next())
{
    if(firstRow)
    {
        firstRow = false;
        //do some setup 
    }

    //do stuff
}
Run Code Online (Sandbox Code Playgroud)

它的伪代码和问题通常不是关于某些特定的编程语言.

我的问题:是否可以编写行为完全相同但不使用其他变量的代码(在本例中为"firstRow").在FOR循环中,可以检查计数器变量值,但是让FOR循环离开这个问题.

loops

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

如何使用MVVM从BackgroundWorker内部更新ObservableCollection?

因为两天我试图解决以下问题:我有一个WPF控件,其中WrapPanel绑定到ObservableCollection.操作会更改ObservableCollection的内容.内容将加载到BackgroundWorker中.在导致内容更改的操作之后,在foreach循环中需要新内容.问题是内容的加载速度很慢,所以需要一点准备.

我的第一次尝试是等待后台工作,直到IsBusy属性设置为false.但IsBusy的财产在等待期间从未改变过!第二次尝试是尝试直接从BackgroundWorker操作ObservableCollection.当然没有成功,因为ObservableCollection在另一个线程中而不是BackgroundWorker.

我真的非常了解如何在跨线程范围内操作内容.但它们都没有奏效.使用Dispatcher尝试解决方案,"ThreadSafeObservableCollection",.....

有谁能告诉我如何解决这个问题?是否有一种简单的方法来编辑另一个线程中的UI线程的内容?或者我如何正确等待BackgroundWorker完成?

编辑: 但我怎么能等待BackgroundWorker完成???

wpf multithreading dispatcher mvvm backgroundworker

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

用于数学的Java还是Python?

我正在尝试编写一个非常重要的基于数学的项目,它将每天多次解析大约100MB +数据,所以,我需要一种非常容易使用的快速语言.我本可以使用C语言,但是,用C语言完成大型项目是非常困难的,尤其是低级编程阻碍了你.所以,我是关于python或java的.两者都配备了OO功能,所以我不介意.现在,这是我选择python的专业人士:

  • 非常好用的语言
  • 有一个非常大的有用的东西库
  • 有一个易于使用的绘图库

这是缺点:

  • 不完全是炽热的
  • 没有一个活跃的本机python神经网络库
  • 我不能在不经常遇到麻烦的情况下关闭我的代码
  • 在客户端计算机上部署python代码很难处理,尤其是当客户端是白痴时.

以下是选择Java的优点:

  • 巨大的图书馆
  • 很好的支持
  • 易于部署
  • 非常快,甚至可能与C++相当
  • Encog神经网络库非常活跃,非常棒
  • 网络支持非常好
  • 强打字

以下是Java的缺点:

  • 我找不到像pyp的matplotlib这样的好的图形库
  • 没有内置支持大整数,这意味着另一个依赖(我的意思是真正的大整数,而不仅仅是math.BigInteger大小)
  • 与Python相比,文件IO有点尴尬
  • 没有大量的数组操作或"使编程简单"类型的功能python具有.

所以,我希望你们能告诉我要用什么.我同样熟悉这两种语言.此外,对其他语言的建议也很棒.

编辑:哇!你们快!10个回复30分钟!

python java math stocks

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

如何重新创建GitHub网络图

是否有任何开源项目或jQuery插件,我可以用来重新创建GitHub网络图?

我想创建具有类似功能的东西.

jquery graph github

18
推荐指数
2
解决办法
4811
查看次数

Asp.Net MVC DropDownList数据绑定

                    <form id="Form1" runat="server">
                        <asp:DropDownList ID="dvmDrmList" runat="server">
                            <asp:ListItem>Theory</asp:ListItem>
                            <asp:ListItem>Appliance</asp:ListItem>
                            <asp:ListItem>Lab</asp:ListItem>
                        </asp:DropDownList>
                    </form>
Run Code Online (Sandbox Code Playgroud)

我想在控制器中绑定此DropDownList.我的意思是如何在控制器类的action方法中获取dropDownList的值.谢谢.

asp.net-mvc-2 drop-down-menu

6
推荐指数
1
解决办法
8576
查看次数

在eclipse中运行我的applet的大小"以applet身份运行"

我正在做我的第一个applet.在测试结果时,我希望能够在预览窗口中的eclipse中运行它,而不是总是将applet部署到jar中并在浏览器中打开页面(浏览器缓存会杀死我!我总是需要重新启动浏览器.. .)

无论如何,当我尝试使用"run as - > Java Applet"运行应用程序时,我得到了预览,但它总是非常小(猜测低于200x200).当我改变每只手的大小时,窗口会增长,但内容会保持很小.当我调用setSize(width, height)窗口开始更大时,内容保持较小.小并不意味着它缩小,这意味着我只看到黑色面板,白色(在浏览器中可见)是不可见的所以它似乎没有缩放...

我错过了什么?

到目前为止我的代码(在broswer中的预期效果与宽度为560,高度为500)

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridLayout;

import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Benchmark extends JApplet {
 private static final long serialVersionUID = -8767182603875435760L;

 GridLayout gridLayout = new GridLayout(7, 1);
 JButton startTests = new JButton("Start");
 JPanel testPanel = new JPanel();
 JPanel topPanel = new JPanel();

 @Override
 public void init() {
  super.init();
  try {
   java.awt.EventQueue.invokeAndWait(new Runnable() {
    public void run() {
     initComponents();
     invalidate(); …
Run Code Online (Sandbox Code Playgroud)

java eclipse applet

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