小编Mug*_*ara的帖子

wpf图像源上的datatrigger

假设绑定是正确的并且图像文件是它们所处的位置,那么有人能够发现当触发器评估为真时下面的xaml中的图像不会改变的原因吗?

干杯,
Berryl

<Image Source="..\..\Images\OK.png" Grid.Column="2" Stretch="None">
    <Image.Style>
        <Style>
            <Style.Triggers>
                <DataTrigger Binding="{Binding TimeSheet, Converter={StaticResource overQuotaConv}}" Value="True">
                    <Setter Property="Image.Source" Value="..\..\Images\Error.png"/>
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </Image.Style>
</Image>
Run Code Online (Sandbox Code Playgroud)

wpf datatrigger

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

按钮内容中的样式DataTrigger Setter无效

<StackPanel>
    <TextBox Text="" x:Name="input"/>
    <Button Content="DataTrigger Before">
        <Button.Style>
            <Style TargetType="Button">
                <Style.Triggers>
                    <DataTrigger Binding="{Binding ElementName=input, Path=Text}" Value="1">
                        <Setter Property="Content" Value="Changed"></Setter>
                    </DataTrigger>
                </Style.Triggers>
            </Style>
        </Button.Style>
    </Button>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)

按钮内容中的样式DataTrigger Setter无效

谢谢

wpf

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

使用Perl从Excel电子表格中读取法语字符

Spreadsheet::ParseExcel用来解析Excel电子表格文件,如下所示

my $FileName = "../excel.xls";
my $parser   = Spreadsheet::ParseExcel->new();
my $workbook = $parser->parse($FileName);
Run Code Online (Sandbox Code Playgroud)

并从这样的细胞中读取值

$product = $worksheeto->get_cell( $row, 0 )->value();
Run Code Online (Sandbox Code Playgroud)

问题在于,例如,当有法国字符时à,它会显示出来ò

为了确保我使用的解析没有错误

print unpack('H*', $product) . "\n";
Run Code Online (Sandbox Code Playgroud)

所以当我使用任何在线十六进制到字符串转换器时,我确实得到了à.

我也试过了

use utf8;
binmode(STDOUT, ":utf8");
Run Code Online (Sandbox Code Playgroud)

而不是à我得到

有没有办法得到正确的字符?

excel perl

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

样式DataTrigger参考父控件的类型

在我的窗口上有几个GroupBox控件,每个控件包含一个网格控件.对于那些我希望设计风格的网格.但只对那些直接位于GroupBox中的网格,所有其他网格都不应受到影响.

我尝试了以下,但不起作用,因为GetType()不是属性.

<Style TargetType="Grid">
    <Style.Triggers>
        <DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=Self}, Path=Parent.GetType()}" Value="{x:Type GroupBox}">
           <!-- <Setter Property="..." Value="..."/> -->
        </DataTrigger>
    </Style.Triggers>
</Style>
Run Code Online (Sandbox Code Playgroud)

我找到了一个解决方法,但它并不是一个非常漂亮的解决方案,因为我必须修改GroupBoxes:

<Style TargetType="GroupBox">
    <Setter Property="Tag" Value="blub"/>
 </Style>
<Style TargetType="Grid">
    <Style.Triggers>
        <DataTrigger Binding="{Binding Path=Parent.Tag, RelativeSource={RelativeSource Mode=Self}}" Value="blub">
           <!-- <Setter Property="..." Value="..."/> -->
        </DataTrigger>
    </Style.Triggers>
</Style>
Run Code Online (Sandbox Code Playgroud)

显然我可以手动设置每个Grid的样式,但我试图避免这种情况,因为它们中有很多.我希望你能找到一种方法让第一个例子起作用.

.net wpf xaml binding styles

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

Bootstrap 导航标签“显示”不起作用?

我正在尝试在词汇表中添加搜索框,但有些问题。该词汇表由 ul inside ul (nav-tabs of bootstrap )` 制作的,在 js 中我使用以下代码:

\n\n
$j(\'#search_glossary\').focus().keyup(function(e){\nif (this.value.length >= 2){\n\n$j(\'.nav-tabs li.active\').removeClass(\'active\');\n        $j(\'.tab-content div.active\').removeClass(\'active\');\n        var filterBy = this.value.toUpperCase();\n        for (var abbr in UlTab) {\nif (abbr.toUpperCase().indexOf(filterBy) !== - 1) {\nvar li = abbr;\n        var ulTabli = UlTab[abbr];\n        var globalUl;\n        if (/tv/.test(ulTabli)) globalUl = "tv";\n        if (/video/.test(ulTabli)) globalUl = "video";\n        if (/audio/.test(ulTabli)) globalUl = "audio";\n        $j(\'ul#\' + ulTabli + \' li a\').show();\n        $j(\'ul#\' + ulTabli + \' li a:eq(\' + li + \')\').show();\n        $j(\'#\' + ulTabli …
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery twitter-bootstrap

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

WPF Combobox 绑定和 SelectedValue 与 SelectedValuePath

我确实在数据绑定和 MVVM 方法论上挣扎,尽管我喜欢这个概念,但我只是在挣扎。我创建了一个 WPF,它有多个组合框和一个按钮。第一个组合框将列出数据库实例名称。单击按钮后将填充剩余的组合框。由于我对第一个数据库实例组合框有问题,我将只显示我的代码。当应用程序启动时,将加载组合框并按预期选择第一项。问题是,当我选择一个新名称时,我希望调用的方法却没有选择。有人可以帮助我理解为什么public DBInstance SelectedDBInstance当我的 XAML 中有此方法时我的方法没有被执行吗SelectedValue="{Binding SelectedDBInstance, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}

这是我的数据库实例组合框的 XAML。我在这里遇到的一个问题是“值”fpr SelectedValuePath,如果我将其更改为“DBInstanceName”,它将不起作用。

 <ComboBox x:Name="cbxRLFDBInstances" ItemsSource="{Binding DBInstances}" 
                  SelectedValue="{Binding SelectedDBInstance, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
                  SelectedValuePath="value" DisplayMemberPath="DBInstanceName"/>
Run Code Online (Sandbox Code Playgroud)

这是我的视图模型代码:

namespace DatabaseTest.ViewModel
{

class RLFDatabaseTableViewModel : INotifyPropertyChanged
{
    Utilities dbtUtilities = new Utilities();


    public RelayCommand LoadDBInfoCommand
    {
        get;
        set;
    }


    public RLFDatabaseTableViewModel()
    {
        LoadDBInstances();

        LoadDBInfoCommand = new RelayCommand(LoadDBInfo);
    }


    public ObservableCollection<DBInstance> DBInstances
    {
        get;
        set;
    }


    public void LoadDBInstances()
    {
        ObservableCollection<DBInstance> dbInstances = new ObservableCollection<DBInstance>();
        DataTable dt = SmoApplication.EnumAvailableSqlServers(false);

        dbInstances.Add(new DBInstance …
Run Code Online (Sandbox Code Playgroud)

c# wpf selectedvalue mvvm

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

如何对Perl数组进行分页?

我不知道问题是否清楚,无论如何,我正在从谷歌驱动器电子表格中读取一些数据Net::Google::Spreadsheet,并且我获取数组中的所有行如下my @rows = $worksheet->rows,但是,我想...让我们说@rows在其他数组之间,例如@rows有200个元素,我想给第一个50 @array1和下一个50 @array2,依此类推,而不使用counter(counter++; if (counter > 50) ...).或者说我只想获得70到110之间的元素.

arrays perl

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

Sleep vs Usleep哪一个选择?(Perl的)

除了秒和微秒之外,睡眠和睡眠之间有区别吗?例如在表现?我的意思是有些情况下使用一个而不是另一个更好吗?

perl

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

正则表达式与管道分隔符?

这是我的字符串:

my $var = "eval(sometext,'|function|65200|url|click|Chargement|margin'.split('|'),0,{}))"
Run Code Online (Sandbox Code Playgroud)

我想得到65200的数字,我试过这个my ($key) = $var =~ /eval.*?\|(\d+)\|.*$/正则表达式,但我什么都没得到.

regex perl

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

使用bash合并多个SQLite数据库?

我有多个具有相同模式的sqlite数据库,我想将它们全部合并在一起,因为我有一个独特的列,可能存在重复的风险,我insert or ignore在sqlite中使用它很容易:

sqlite3 database.db3
sqlite> attach './db1.db3' as s1;
sqlite> attach './db2.db3' as s2;
sqlite> attach './db3.db3' as s3;
sqlite> insert or ignore into table (c1, c2, c3) select c1, c2, c3 from s1.table;
sqlite> insert or ignore into table (c1, c2, c3) select c1, c2, c3 from s2.table;
sqlite> insert or ignore into table (c1, c2, c3) select c1, c2, c3 from s3.table;
sqlite> .exit
Run Code Online (Sandbox Code Playgroud)

我读了关于转储,但我不想合并整个架构,只是一个表,所以我想到了这个解决方案,现在直到这里一切都很好,但我需要通过bash运行所有这一切,我尝试了以下但它没有:

sqlite3 database.db3 "attach './db1.db3' as s1;"
sqlite3 database.db3 "attach './db2.db3' …
Run Code Online (Sandbox Code Playgroud)

linux sqlite bash

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

更新IDbCommand参数值

我想在IDbCommand参数值确实存在时更新它

    public void AddParameter(IDbCommand command, string name, object value)
    {
        var parameter = command.CreateParameter();
        parameter.ParameterName = "@" + name;
        parameter.Value = value;
        command.Parameters.Add(parameter);
    }
Run Code Online (Sandbox Code Playgroud)

我尝试将其添加到我的方法中,但它不适用于IDBCommand,因为它是一个SqlCommand选项。

if (command.Parameters.Contains("@" + name))
{
     command.Parameters["@" + name].Value = value;
}
Run Code Online (Sandbox Code Playgroud)

c# sql ado.net

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

拆分字符串并得到单引号之间的内容?

我有这个字符串'1','name','phone','address, street' 我想把它拆分成一个数组,所以我使用: $link =~ s/'//g;删除"'"然后@array = $link.split(','),问题现在是地址,你可以在这里看到,地址可能有一个逗号,所以当分裂我弄错了,我从一开始就考虑做一个正则表达式,但我不确切知道如何写它,我的意思是这是我能想到的,(?:.*?){1}[^']*[,](.*?)(?='|$)但它不起作用.({1}从1到5不等)

regex perl

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

使用套接字发送url请求?

我想使用套接字打开一个链接并阅读html代码,到目前为止我使用的是:

my $req = <<EOT
GET / ${id} HTTP/1.1
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:identity
Accept-Language:fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4
Connection:${connection}
Host:${host}
User-Agent:Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)     Chrome/31.0.1650.63 Safari/537.36

EOT
;

$socket->send($req);


print "skipping headers\n";
while(<$socket>) { s/^(.*?)\r?\n$/\1/; last if /^\s*\r?\n?$/; }

print "Reading Chunks\n";
my $buffer = "";
while(<$socket>)
{
    last if /^HTTP/;
    next if /^.{0,5}$/;
    s/^\s*(.*?)\s*\r?\n$/\1/;
    $buffer .= $_;
}
print $buffer;
Run Code Online (Sandbox Code Playgroud)

我有两个问题......

1)while(<$socket>)需要时间,当我把打印放在while循环中时,我可以看到只需添加最后一个标签需要一段时间</html>,当打印所有其他源时,它只挂了一分钟到添加最后一个标签.

2)我没有得到页面的真实源代码,我的意思是我们使用的那个view-source:www.example.com,我错过了什么?

编辑:

我称这个子连接在开始时创建套接字

sub _connect
{
      my ($peerAdd) = @_;
     return IO::Socket::INET->new( …
Run Code Online (Sandbox Code Playgroud)

sockets perl

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