小编sla*_*voo的帖子

不等待messageBox的结果

当在当前用户测试的客户端应用程序中捕获未处理的异常时,我创建了这样的代码.

catch(Exception ex)
{
    var result = MessageBox.Show(ex.Message, "Error", MessageBoxButton.OK);
    Current.Shutdown();
}
Run Code Online (Sandbox Code Playgroud)

但是消息框只会很快出现,然后程序关闭.为什么代码不等待结果显而易见.我该怎么办?

.net c# wpf messagebox

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

如何中止使用AcceptTcpClient()的线程?

AcceptTcpClient()我打电话后阻止app退出thrd.Abort().

如何在聆听时退出应用程序?

c#

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

Elasticsearch/Nest - 使用MatchPhrase和OnFieldsWithBoost

在我今天的代码中,我正在进行如下搜索:

.Query(q => q.QueryString(qs => qs.Query(searchQuery).OnFieldsWithBoost(f => f.Add(b => b.MetaTitle, 5).Add(b => b.RawText, 1))))
Run Code Online (Sandbox Code Playgroud)

我的问题是,如果我搜索一个类似的短语,这给了我一个非常广泛的搜索."艳阳高照".我尝试在RawText上使用MatchPhrase而不是QueryString,这种方法有用.

问题是我仍然想要在MetaTitle和RawText中搜索并使用我正在使用的提升.

c# elasticsearch nest

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

在程序中使用 c 获取 sqlite 表中的行数

如何在程序中使用c获取sqlite表中的行数?是否只能通过运行“select * from table”来实现?并增加一个变量?

sqlQuery = "从公司中选择计数 (*);";
rc = sqlite3_prepare_v2(db, sqlQuery, -1, &stmt, NULL);
printf("准备计数状态:%d\n", rc);
行计数 = sqlite3_step(stmt);
sqlQuery = "从公司中选择*;";
rc = sqlite3_prepare_v2(db, sqlQuery, -1, &stmt, NULL);
printf("准备计数状态:%d\n", rc);
while (SQLITE_ROW == sqlite3_step(stmt)) {
   行数++;
}

我没有得到 1 的行数,

但当我执行2时我确实明白了。

sqlite

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

将NetworkStream复制到MemoryStream的时间为∞天

我有以下代码:

_clientRequestStream = _tcpClient.GetStream();

var memoryStream = new MemoryStream();
_clientRequestStream.CopyTo(memoryStream);
Run Code Online (Sandbox Code Playgroud)

CopyTo需要很长时间才能复制Stream到另一个Stream.似乎应用程序没有任何理由停在那里,或者至少我找不到原因.

.net c# streaming network-programming

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

C#ClickOnce安装文件夹 - windows如何生成文件夹名称

我想知道Windows generate folder将如何ClickOnce application安装.

在Startmenu中是文件的"快捷方式",在一些"startrek"文件夹中放置的内容如下:

C:\ Users \用户名\应用程序数据\本地\应用\ 2.0\GT ?? 4KXX.PRJ\EGV ??? 1G.??C\prin..tion_7???5a2?????74b6_0000.0002_1dae ?? ?? 89111c35

那些文件夹名称是什么意思?


例如:

如果我将有一些settings.txt文件,我希望该用户可以更改应用程序的一些参数.有没有办法知道,它将安装在哪里,文件在哪里?(用户将在其中找到此settings.txt文件).

我知道我可以在C:\中创建文件,并在启动应用程序后,我将在"强"路径中修改文件.但我真的不喜欢太多的文件,文件夹,无论在C:\中,我更喜欢将设置文件放在同一个文件夹中,如应用程序.但是使用ClickOnce安装是非常困难 - 不可能 - 找到该文件.

似乎当"startrek"类似于项目的哈希.


所以我想知道文件夹的含义是什么,以及它是否是项目的一些哈希或者是什么.

c# windows directory clickonce

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

AvalonDock2:仅用于文档的LayoutItemTemplate

我目前正在使用AvalonDock2构建一个简单的UI。如果我正确理解,则可以使用LayoutItemTemplate为所有文档和可打印对象设置模板。

现在这是我的问题:我想拥有“硬编码”可锚定模板。所有可锚定对象如下所示:

<avalonDock:LayoutAnchorable Title="Dialogs" 
                             CanClose="False" 
                             CanHide="False" 
                             CanFloat="False">
    <integratorUI:Explorer DataContext="{Binding Path=Editor.ModelsDialogs}"/>
</avalonDock:LayoutAnchorable>
Run Code Online (Sandbox Code Playgroud)

另一方面,我的中央文档窗格正在通过

DocumentsSource="{Binding Path=Editor.EditingModelObjects}"
Run Code Online (Sandbox Code Playgroud)

对于那些文档,设置模板很有意义,因此我可以使用ContentControl并选择适当的样式,如下所示

<Style x:Key="DocumentStyle" TargetType="ContentControl">
    <Style.Triggers>
        <DataTrigger Binding="{Binding Path=Type}" Value="{x:Static Member=integratorCore:ModelObjectType.Npc}">
            <DataTrigger.Setters>
                <Setter Property="Template" Value="{StaticResource ResourceKey=NpcViewTemplate}"/>
            </DataTrigger.Setters>
        </DataTrigger>
        <DataTrigger Binding="{Binding Path=Type}" Value="{x:Static Member=integratorCore:ModelObjectType.Room}">
            <DataTrigger.Setters>
                <Setter Property="Template" Value="{StaticResource ResourceKey=RoomViewTemplate}"/>
            </DataTrigger.Setters>
        </DataTrigger>
        <DataTrigger Binding="{Binding Path=Type}" Value="{x:Static Member=integratorCore:ModelObjectType.Dialog}">
            <DataTrigger.Setters>
                <Setter Property="Template" Value="{StaticResource ResourceKey=DialogViewTemplate}"/>
            </DataTrigger.Setters>
        </DataTrigger>
    </Style.Triggers>
</Style>
Run Code Online (Sandbox Code Playgroud)

现在的问题是,设置LayoutItemTemplate会覆盖我的锚点的硬编码内容...

我怎样才能同时对固定锚和模板化文档进行硬编码?就像在旧的AvalonDock版本中一样,或者我应该如何在新版本中正确处理呢?

这是完整的DockingManager:

<avalonDock:DockingManager x:Name="dockingManager"
                           Grid.Row="2"
                           DocumentsSource="{Binding Path=Editor.EditingModelObjects}"
                           DocumentClosing="DockingManagerDocumentClosing">

    <avalonDock:DockingManager.Theme>
        <avalonDock:ExpressionDarkTheme/>
    </avalonDock:DockingManager.Theme>

    <!--<avalonDock:DockingManager.LayoutItemTemplate>
        <DataTemplate>
            <ContentControl Style="{StaticResource LayoutItemStyle}" />
        </DataTemplate>
    </avalonDock:DockingManager.LayoutItemTemplate>-->

    <avalonDock:DockingManager.DocumentHeaderTemplate>
        <DataTemplate>
            <TextBlock …
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml avalondock

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

Laravel外键下拉列表

我有2张桌子:

  • CUSTOMERS(id,full_name,company_id)
  • 公司(id,company_name)

我已经创建了两个表之间的关系,它工作正常,因为我可以在客户视图中显示公司名称,如下所示: $customer->company->company_name

我现在遇到了客户createedit观点的问题.我想在创建和编辑视图中将company_name作为下拉列表(Form Select).然后将公司ID插入CUSTOMERS表.

输入

laravel eloquent laravel-4

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

是否有可能在有条款中检查两个以上的条件?

当我尝试以下查询

select column2 
from table1 
group by column2 
having count(column3) = count(column1) and column5 in (1,2)
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

ORA-00979: not a GROUP BY expression
00979. 00000 -  "not a GROUP BY expression"
Run Code Online (Sandbox Code Playgroud)

我应该写什么才能获得结果,即满足两个条件的column2

i.e. (count(column3) = count(column1) and column5 in (5,6).

sql oracle

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

单击PyQt4中主屏幕上的按钮后,如何打开子窗口

我试图制作一个简单的转换器.我使用PyQt4设计制作Gui我想知道在点击单个按钮后如何启动新窗口.

这是我使用PyQt4 Designer创建的界面.这是图片链接:

一个

当我点击货币按钮时,我想启动这个窗口.这是图片链接:

b

这是我的main.py代码

from PyQt4 import QtGui
from main_screen import mainscreen

def main():
    import sys
    qApp = QtGui.QApplication(sys.argv)
    aw = mainscreen()
    aw.show()
    sys.exit(qApp.exec_())

if __name__ == '__main__':
    main()
Run Code Online (Sandbox Code Playgroud)

mainscreen.py的代码

from PyQt4 import QtCore, QtGui
from window_main import Ui_MainWindow

class mainscreen(QtGui.QMainWindow, Ui_MainWindow):
        def __init__(self, parent=None):
                super(mainscreen,self).__init__(parent)
                self.ui = Ui_MainWindow()
                self.ui.setupUi(self)
Run Code Online (Sandbox Code Playgroud)

点击货币按钮(货币按钮的对象名称是"currency_bt")后如何打开新窗口,我必须在同一窗口中编写货币代码,或者我必须在新窗口中写入.我该怎么做.

我是Python Gui编程的新手.

python user-interface pyqt4

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