小编Sag*_*gio的帖子

MVVM Light RelayCommand参数

我在使用GalaSoft MVVM Light框架将参数传递给relaycommand时遇到问题.我知道mvvm light的relay命令的实现不使用lambda参数,所以我做了一些研究,并找到了一种方法,人们通过做这样的事情来解决它:

public RelayCommand ProjMenuItem_Edit
{
    get
    {
        if (_projmenuItem_Edit == null)
        {
            //This should work....
            _projmenuItem_Edit = new RelayCommand(ProjEditNode);
        }
        return _projmenuItem_Edit;
    }
}

private void ProjEditNode(object newText)
{
    var str = newText as string;
    OrganLocationViewModel sel = 
        ProjectOrganLocationView.GetExtendedTreeView().GetTopNode();

    //Console.WriteLine(sel.OrganDisplayName);
    sel.OrganDisplayName = str;
}
Run Code Online (Sandbox Code Playgroud)

但是,我一直在_projmenuItem_Edit = new RelayCommand(ProjEditNode);说错误Argument 1: cannot convert from 'method group' to 'System.Action'

我错过了什么?

c# wpf relaycommand mvvm-light

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

WebView - WebPage不可用

我(像许多其他人一样)遵循webview教程,但我无法加载页面.一切都出现''网页不可用'

我确保模拟器确实可以访问互联网,并且只是为了排除模拟器的问题,我尝试在手机上安装它,这导致了相同的行为.

我已经读过,最大的问题是人们没有将INTERNET权限放在我的清单文件中,我试图将其作为清单中不同元素的子项,但无济于事.有谁知道为什么我不能加载这个?

这是我的代码:

Manifest:

<application android:icon="@drawable/icon" android:label="@string/app_name">
    <activity android:name=".AndroidTestActivity"
              android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        <uses-permission android:name="android.permission.INTERNET" />
    </activity>     
</application>
</manifest>
Run Code Online (Sandbox Code Playgroud)

AndroidTestActivity

public class AndroidTestActivity extends Activity {
    WebView webview;
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);

            webview = (WebView) findViewById(R.id.webview);
            webview.getSettings().setJavaScriptEnabled(true);

            webview.loadUrl("http://www.google.com/m");

            Intent intent = getIntent();
            // To get the action of the intent use
            System.out.println(intent.getAction());
            // We current open a hard-coded URL …
Run Code Online (Sandbox Code Playgroud)

android webview

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

Eclipse无法安装断点

所以几周前我的Eclipse IDE不再允许我远程调试我的应用程序,说它无法安装断点,因为没有显示行号...问题是我的Eclipse设置为显示行号(我经常在我的日常发展中使用)

我做了一些研究,发现它有时与使用ant构建项目和javac中的调​​试设置有关.我确保调试是在我的build.xml目标中设置的,但它仍然不允许我使用相同的错误进行调试.

现在,为了增加侮辱伤害,我点击了"不再显示此消息"的方框,所以现在我永远不会知道我在尝试时是否正在调试我的程序,或者如果它失败并且错误信息只是没出现.

有谁知道如何解决这一问题?或者,至少知道如何切换该错误消息以弹出备份,以便我可以判断是否/何时进行修复?

java eclipse

6
推荐指数
2
解决办法
4万
查看次数

如何避免转换器与WPF代码中的多绑定冲突

我在后面的代码中动态创建WPF元素,并且对于Grid我构建的每个行,它由a CheckBox和动态数字组成TextBoxes.需要的交互如下:

  • 如果TextBoxes连续的所有值都为0,则将该CheckBox IsChecked属性设置为true和禁用它.
  • 如果其中一个TextBoxes更改为0,则启用 CheckBox并设置IsCheckedfalse.
  • 如果用户单击CheckBox,则将所有关联设置TextBoxes0和禁用CheckBox

我能够使用以下代码完成最后一部分的第一部分:

Binding setScoreToZeroIfIsNormalChecked = new Binding("IsChecked");
setScoreToZeroIfIsNormalChecked.Source = this.NormalCheckBoxControl;
setScoreToZeroIfIsNormalChecked.Converter = m_NormalCheckBoxJointScoresConverter;
tempJointScoreControl.JointScoreContainer.SetBinding(ContainerBase.SingleAnswerProperty, setScoreToZeroIfIsNormalChecked);
Run Code Online (Sandbox Code Playgroud)

和转换器:

public object Convert(object value, System.Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
    if (value is bool && targetType == typeof(Answer))
    {
        if ((bool)value)
        {
            Answer answer = new Answer();
            answer.Value …
Run Code Online (Sandbox Code Playgroud)

c# wpf dynamic-binding

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

Unicode下划线并未完全强调某些字符

我有一个string需要加下划线的C#应用​​程序.这需要在unicode中完成,因为字符串被导出并显示在word文件中.为此,我在每个字符之前都使用了下划线unicode \u0332,但它并没有完全强调"m"字符,如此屏幕截图所示:

在此输入图像描述

我已经尝试\u0332过在m之前和之后的几次,但输出总是相同的.

有没有办法让它完全强调角色?

编辑:我只是尝试使用连续下划线unicode符号,\u2381但根本不渲染.

string unicode

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

为什么xcopy在使用这些参数时不能复制文件?

我有一个简单的xcopy脚本,我从命令行运行,它读取目录和文件名的CSV文件.我之前使用过非常相似的脚本而没有任何问题.这是脚本:

Z:\HOME\>for /f "delims=, tokens=1,2,3,4" %i in (Z:\HOME\MissingImages.csv) do
echo f | xcopy "Y:\%j\%k\%l" "C:\Horizon\%j\%k\%l" >> Z:\HOME\MissingImagesLog.txt
Run Code Online (Sandbox Code Playgroud)

但是,它不会复制任何文件.这是日志文件中的条目:

Does C:\Horizon\K\00\6bef500f.IMG  specify a file name
or directory name on the target
(F = file, D = directory)? f
0 File(s) copied
Run Code Online (Sandbox Code Playgroud)

它正在查找图像,因为如果我将根目录更改为其他内容,脚本将只0 File(s) copied为所有条目填充日志文件,因此文件在那里可以看到...

此外,Z:\驱动器在网络而不是本地,但我再次在网络上使用非常相似的脚本没有问题(它只需要更长的时间).

我尝试过不同的选项,比如/i,/s等等,但我似乎无法将其复制到任何文件中.

windows cmd xcopy

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

WPF以编程方式创建treeview itemtemplate/columns

我有一个应用程序,它读取数据库表并将其放入树视图中.树视图的当前ItemTemplate如下所示:

<TreeView.ItemTemplate>
    <HierarchicalDataTemplate ItemsSource="{Binding SubOrganLocations}">
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*" />
                <ColumnDefinition Width="35" />
                <ColumnDefinition Width="35" />
                <ColumnDefinition Width="35" />
            </Grid.ColumnDefinitions>
            <TextBlock Grid.Column="0" Text="{Binding OrganDisplayName}" />
            <TextBox Grid.Column="1" IsEnabled="True" />
            <TextBox Grid.Column="2" IsEnabled="True" />
            <TextBox Grid.Column="3" IsEnabled="True" />
        </Grid>
    </HierarchicalDataTemplate>
</TreeView.ItemTemplate>
Run Code Online (Sandbox Code Playgroud)

但是,将来可能会有更多列需要添加(由表中不同值的数量决定),所以我试图动态创建它.我该怎么做呢?

c# wpf treeview itemtemplate

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

File.getFreeSpace() 没有返回正确的值

file.GetFreeSpace()在我的应用程序中使用Java 的 File 类来确保在传输文件之前有足够的空间。该路径是一个 unc 路径,目前有大约 5TB 的可用空间。但是,当运行上述代码时,返回的空间量仅为 713998336 字节(~680MB)。

我将应用程序映射为使用不同的 unc 路径,该路径具有 100MB 到 1GB 多一点的可用空间(我正在添加/删除文件以进行测试),并且应用程序报告了正确的可用空间量。

更新:通过大量调试,我发现了问题。与此类似的 unc 路径:\\domain6\test\Scratch_Folder\其中 Scratch_Folder 是一个 DFS 命名空间,具有约 5TB 的可用空间。然而,当file.getFreeSpace执行时,它返回\\domain6\test\只有 670MB的可用空间。为什么会发生这种情况?

java unc

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

如何从列表中删除文件?

我有一个使用哈希算法来组织文件的文件系统.我过去曾使用xcopy通过传入一个文件来复制文件到另一个位置,该文​​件包含所有文件的列表并让它遍历它.该脚本类似于以下内容:

for /f "delims=, tokens=1,2,3" %i in (D:\foo.csv) 
do echo F | xcopy /i /d "Z:\%i\%j\%k" "Y:\%i\%j\%k" >> "D:\xcopy\Log.txt"
Run Code Online (Sandbox Code Playgroud)

但是,现在我遇到的情况是,除了复制文件中提供的foo.csv文件之外,我还希望它们也被删除.我查看了xcopy文档,找不到任何内容.有没有我可以做到这一点,即使我必须运行另一个脚本来浏览相同的文件列表并在使用xcopy后删除它们?

谢谢!

xcopy

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

RegEx.IsMatch()与String.ToUpper().包含()性能

由于在.NET中没有不区分大小写string.Contains()的情况(但是string.Equals()存在一个不区分大小写的版本让我感到困惑,但我离题了),使用RegEx.IsMatch()与使用之间的性能差异是什么String.ToUpper().Contains()

例:

string testString = "tHiSISaSTRINGwiThInconSISteNTcaPITaLIZATion";

bool containsString = RegEx.IsMatch(testString, "string", RegexOptions.IgnoreCase);
bool containsStringRegEx = testString.ToUpper().Contains("STRING");
Run Code Online (Sandbox Code Playgroud)

我一直听说这string.ToUpper()是一个非常昂贵的电话,所以当我想进行string.Contains()比较时,我不愿意使用它,但RegEx.IsMatch()在性能方面如何比较呢?

是否有更有效的方法进行此类比较?

c# regex string

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

C#SqlCommand - 将结果集设置为变量

我在C#中运行一个返回一个值(String)的SQL命令.我然后尝试将其保存到变量,但它总是抛出此异常:

System.Data.dll中出现类型'System.InvalidOperationException'的第一次机会异常线程''(0x1bbc)已退出,代码为0(0x0).System.InvalidOperationException:没有数据时读取的尝试无效.在System.Data.SqlClient.SqlDataReader.GetValue(Int32 i)

但是,当我在SQL Server中运行相同的命令时,它肯定会输出一个值.

myCommand = new SqlCommand("SELECT TrialName FROM dbo.CT WHERE NumId='"+TrialId+"'", myConnection);    
SqlDataReader dr = myCommand.ExecuteReader();  
String TName = dr[0].ToString(); 
Run Code Online (Sandbox Code Playgroud)

即使我对整个sqlcommand进行硬编码(而不是使用TrialId变量),它仍会抛出异常.这里发生了什么?

c# sql

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

将Textblock文本绑定到2个不同的属性

我有一个绑定的树视图,它显示了treeviewitem的一个属性(即displayname)(它们是一个对象的自定义视图模型).

这是相关的xaml:

<local:ExtendedTreeView.ItemTemplate>
                    <HierarchicalDataTemplate ItemsSource="{Binding SubOrganLocations}">
                        <TextBlock Text="{Binding OrganDisplayName}" >
                        </TextBlock>
                    </HierarchicalDataTemplate>
                </local:ExtendedTreeView.ItemTemplate>
Run Code Online (Sandbox Code Playgroud)

我想要的是能够在括号中显示显示名称旁边的另一个属性.

所以不是看起来像这样的树视图:

Root
-sub node1
--subsub node1
-sub node2
Run Code Online (Sandbox Code Playgroud)

我希望它看起来像这样:

Root (Type1)
    -sub node1 (Type2)
    --subsub node1 (Type 3)
    -sub node2 (Type 1)
Run Code Online (Sandbox Code Playgroud)

我怎么能做到这一点?使用多重绑定?

c# data-binding wpf treeview textblock

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