标签: showdialog

WPF路由命令和ShowDialog Windows

我想知道如何在Visual Tree中处理通过ShowDialog打开的窗口.

例如,Window A通过ShowDialog打开Window B. 在窗口B上触发路由命令时,窗口A不接收命令(即使它正在侦听它).

有没有办法让这项工作?

谢谢!乔恩

wpf command routed showdialog

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

应用程序在执行AlertDialog.Builder create()方法时崩溃 - Android

我在LG Eve手机上测试我的应用程序.我有一个应用程序试图从Web下载一些东西,当它抛出一个异常时,它应该启动一个alertdialog说有一个错误.当手机没有wifi信号时,程序会在builder.create()崩溃(见下面的代码).但是,当有wifi信号,并且异常被其他东西抛出时(例如,url中的拼写错误),对话框将启动它应该的方式.任何线索,为什么这可能是?

onCreateDialog的代码:

@Override
protected Dialog onCreateDialog(int id){

    Dialog d = null;
    switch (id){

    case DIALOG_DATA_ERROR_ID:

        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setMessage(getResources().getString(R.string.error_data));
        builder.setCancelable(false);
        builder.setNeutralButton("OK", new DialogInterface.OnClickListener(){

            public void onClick(DialogInterface d, int id){

                d.cancel();
            }
        });
        d = builder.create();
        break;      
    }
    return d;
}
Run Code Online (Sandbox Code Playgroud)

调用showDialog的AsyncTask代码:

private static class DownloadJSONTask extends AsyncTask<String, Void, String>{


    private ProgressDialog dialog;
    private Activity parent;
    private JSONParserInterface jsonParser;

    public DownloadJSONTask(Activity parent, JSONParserInterface jsonParser){ 
        this.parent = parent;
        this.jsonParser = jsonParser;
    }

       protected void onPreExecute(){

          dialog = ProgressDialog.show(parent, "Loading", …
Run Code Online (Sandbox Code Playgroud)

crash android builder showdialog android-alertdialog

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

C#:为什么没有ShowDialog().ToString()返回预期的String?

labelTotal保存类Keypad(C#WinForms)的值.已覆盖ToString以返回labelTotal.Text.

namespace Gui3
{
    public partial class Keypad : Form
    {
        public Keypad()
        {
            InitializeComponent();
        }
        public override String ToString() {return labelTotal.Text;}
        private void buttonOk_Click(object sender, EventArgs e)
        {
            this.Close();
        }
        ...
Run Code Online (Sandbox Code Playgroud)

为什么不键盘.ShowDialog().ToString()返回labelTotal.Text?

namespace Gui3
{
    public partial class Setup : Form
    {
        public Setup()
        {
            InitializeComponent();
        }
        private void buttonStartDepth_Click(object sender, EventArgs e)
        {
            Keypad keypad = new Keypad();
            ////////// Not working as expected /////////
            String total = keypad.ShowDialog().ToString();
            ...
Run Code Online (Sandbox Code Playgroud)

c# overriding tostring showdialog

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

Activity.showDialog(int,Bundle)上的java.lang.NoSuchMethodError?

这是LogCat所说的:

01-21 17:20:06.057: ERROR/AndroidRuntime(27463): java.lang.NoSuchMethodError: com.mohit.geo2do.activities.TasksList.showDialog
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at com.mohit.geo2do.activities.TasksList.onContextItemSelected(TasksList.java:190)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at android.app.Activity.onMenuItemSelected(Activity.java:2183)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at com.android.internal.policy.impl.PhoneWindow$ContextMenuCallback.onMenuItemSelected(PhoneWindow.java:2785)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:140)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:855)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at com.android.internal.view.menu.MenuDialogHelper.onClick(MenuDialogHelper.java:129)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at com.android.internal.app.AlertController$AlertParams$3.onItemClick(AlertController.java:898)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at android.widget.AdapterView.performItemClick(AdapterView.java:301)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at android.widget.ListView.performItemClick(ListView.java:3626)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at android.widget.AbsListView$PerformClick.run(AbsListView.java:3600)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at android.os.Handler.handleCallback(Handler.java:587)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at android.os.Handler.dispatchMessage(Handler.java:92)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at android.os.Looper.loop(Looper.java:123)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at android.app.ActivityThread.main(ActivityThread.java:4363)
01-21 17:20:06.057: ERROR/AndroidRuntime(27463):     at …
Run Code Online (Sandbox Code Playgroud)

java android showdialog nosuchmethoderror

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

Window.Loaded - ShowDialog() - 无法执行操作

描述

\n\n

您好,我一直在网上搜索有关此问题的信息,但没有找到任何可以修复该问题的信息。

\n\n

我想在主窗口加载时显示一个对话框,因此我为我的MainWindowLoaded 事件分配了一个事件处理程序。处理程序如下:

\n\n
private void Window_Loaded(object sender, RoutedEventArgs e) {\n    if (Settings.Instance.GetBool(ConfigFunctionalityGroup, "CheckForUpdatesOnStartup")) {\n        worker = new BackgroundWorker();\n        worker.DoWork += worker_DoWork;\n        worker.ProgressChanged += worker_ProgressChanged;\n        worker.WorkerReportsProgress = true;\n        worker.RunWorkerAsync();\n    }\n\n    findandreplacedialog = new FindAndReplaceDialog() { Owner = this };\n\n    Open_Environment_Click(null, null);\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

Open_Environment_Click是菜单项的事件处理程序,编写如下:

\n\n
private void Open_Environment_Click(object sender, RoutedEventArgs e) {\n    SelectEnvironmentDialog dialog = new SelectEnvironmentDialog(Environments);\n\n    if (dialog.ShowDialog().Value == true) {\n        dialog.SelectedEnvironment.Open();\n    }\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

例外

\n\n

ShowDialog当我在 中调用对话框时发生异常Open_Environment_Click

\n\n

异常详情如下:

\n\n …

c# wpf invalidoperationexception showdialog

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

如何在没有ShowDialog()的情况下等待表单关闭?

在我的程序中,我使用WebBrowser控件进行OAuth.它位于vk_auth_window表格上.所以在我打电话的代码中vk_auth_window.WebBrowser1.Navigate(vkauthurl).如果身份验证成功,我会默默地获取令牌,但如果用户未经过身份验证,vk_auth_window则会向他们显示一个表单以输入用户名和密码.为了检查这一点,我捕获_DocumentComplete事件并检查正确的URL.在用户完成身份验证或关闭身份验证表单之前,我不需要执行任何其他代码.ShowDialog()可以解决这个问题,但它在某种程度上隐藏了WebBrowser控件中用户名和密码字段的光标.所以我Dim showform as Boolean=True在_DocumenComplete事件中引入了一个变量并将其设置为False,在主代码中我使用了无限循环.

While showform
       System.Threading.Thread.Sleep(100)
       Application.DoEvents()
End While
Run Code Online (Sandbox Code Playgroud)

然而,由于线程休眠,它使用户输入变慢.如果我删除它们,它会加载CPU相当多.有没有更好的方法等待表格关闭?它是什么?

.net vb.net oauth webbrowser-control showdialog

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

BackGroundWorker 线程中的 ShowDialog 和 UI 交互

经过2个小时的研究,我仍然找不到解决我的问题的方法。

我所做的任务是在 BackGroundWorker 线程中处理一些文件。但是,有时我需要使用 ShowDialog 让用户选择 SaveFile 位置,但我收到 STA/MTA 错误。

主窗体代码:

private void button2_Click(object sender, EventArgs e)
{
            button1.Enabled = false;
            ProcessReportWorker.RunWorkerAsync();
}
Run Code Online (Sandbox Code Playgroud)

工作代码:

void ProcessReportWorker_DoWork(object sender, DoWorkEventArgs e)
{
    int ReportCount = Reports.Count();
    foreach (string Report in Reports)
    {
            ProcessReport NewReport = new ProcessReport(Report);
        string result = NewReport.Start();
    }
} 
Run Code Online (Sandbox Code Playgroud)

ProcessReport.Start() 代码:

class ProcessReport
{
    public string Start() 
    {
        if(File.Exists(ResultPath))
        {
            SaveFileDialog SaveReport = new SaveFileDialog();
                    SaveReport.InitialDirectory = "c:\somepath";
                    SaveReport.CheckPathExists = true;
                    SaveReport.DefaultExt = ".xls";
                    SaveReport.OverwritePrompt = true;
                    SaveReport.ValidateNames …
Run Code Online (Sandbox Code Playgroud)

c# multithreading backgroundworker sta showdialog

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

flutter,Switch widget 在 showDialog 中无法正常工作

我找到了这个网站并运行了代码。该示例代码运行良好。这段代码在这里。

import 'package:flutter/material.dart';

void main() {
  runApp(MaterialApp(
    home: MyApp(),
  ));
}

class MyApp extends StatefulWidget {
  @override
  _State createState() => _State();
}

class _State extends State<MyApp> {
  bool isSwitched = false;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(
          title: Text('Flutter - tutorialkart.com'),
        ),
        body: Center(
          child: Switch(
            value: isSwitched,
            onChanged: (value) {
              setState(() {
                isSwitched = value;
                print(isSwitched);
              });
            },
            activeTrackColor: Colors.lightGreenAccent,
            activeColor: Colors.green,
          ),
        )
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

修复了放置在 ShowDialog 内的 Switch Widget。

import 'package:flutter/material.dart'; …
Run Code Online (Sandbox Code Playgroud)

showdialog flutter

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

showGeneralDialog 中的barrierDismissible 不适用于脚手架

我对 Flutter 还是个新手。我尝试使我的对话框能够在单击对话框外部时关闭。但是,如果我使用 Scaffold,barrierDismissible:true将不起作用。我尝试使用 Wrap 但出现错误:将显示找不到找到的材质小部件。有关于如何关闭对话框的任何想法吗?

这是我的代码:

showGeneralDialog(
     barrierDismissible: true,
       pageBuilder: (context, anim1, anim2) {
         context1 = context;
          return StatefulBuilder(
             builder: (context, setState) {
                return Scaffold(
                    backgroundColor: Colors.black .withOpacity(0.0),
                        body:  Align(
                          alignment: Alignment.bottomCenter,
                          child: Container(
                               child: InkWell()
                                   )
                                  )
                                }
                              }
                            )
Run Code Online (Sandbox Code Playgroud)

showdialog dart flutter

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

setstate 不适用于 showdialog 和 Alertdialog

在我的代码中使用有状态小部件和setstate以及showdialogAlertdialog似乎无法正常工作,但为了简化起见,我在这里用更小更简单的代码模拟了同样的问题,以便更好地理解问题

import 'package:flutter/material.dart';
import '../widgets/app_drawer.dart';

class Test extends StatefulWidget {

  @override
  State<Test> createState() => _TestState();
}

class _TestState extends State<Test> {

  int x = 0;
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      drawer: AppDrawer(),
      appBar: AppBar(
        title: Text("Shop"),
      ),
      body: Column(
        children: [
          RaisedButton(
            onPressed: () {
              showDialog(
                context: context,
                builder: (ctx) => AlertDialog(
                  title: Text("hey"),
                  content: Text(x.toString()),
                  actions: [
                    RaisedButton(
                      onPressed: () {},
                      child: Text("click me"),
                    ),
                    RaisedButton(
                      onPressed: () { …
Run Code Online (Sandbox Code Playgroud)

showdialog setstate dart flutter

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

FormClosing委托不使用ShowDialog()方法

在我的C#WinForms程序中,我有一些表单,我将其中一个显示为对话框:

MyForm mf = new MyForm();
mf.ShowDialog();
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试为他们设置表格结束活动时,它不起作用;

mf.FormClosing += delegate { MessageBox.Show("Dialog is closed.")};
Run Code Online (Sandbox Code Playgroud)

问题是什么?

PS:当我使用mf.Show()方法调用表单时,它工作正常.

谢谢.

c# delegates showdialog winforms formclosing

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

动画android之后的showDialog

我创建了一个模拟爆炸的动画:带有此动画的"booom"图像:

blast.xml HyperspaceExplosion on Activity

<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">


<scale
    android:interpolator="@android:anim/bounce_interpolator"
    android:fromXScale="1.0"
    android:toXScale="2.0"
    android:fromYScale="1.0"
    android:toYScale="2.5"
    android:pivotX="50%"
    android:pivotY="50%"
    android:fillAfter="false"
    android:fillBefore="false"
    android:duration="3000"
     />
</set>
Run Code Online (Sandbox Code Playgroud)

当玩家点击炸弹爆炸开始时.在爆炸结束时,我想打开一个Dialog.

炸弹行为的简单代码:

getBombImage().setOnClickListener(
            new View.OnClickListener() {

                MediaPlayer mp = null;

                    @Override
                    public void onClick(View v) {


                             getExplosionImage().setVisibility(View.VISIBLE);

                        if(!isSoundOff()){
                            mp = MediaPlayer.create(getApplicationContext(), R.raw.explosion);
                            mp.start();
                        }

                        getExplosionImage().startAnimation(getHyperspaceExplosion());
                        getExplosionImage().setVisibility(View.INVISIBLE);

                        showDialog(1);

                    }
                }
);
Run Code Online (Sandbox Code Playgroud)

问题是爆炸和对话在时间上是冲突的,并且在对话框打开后爆炸继续.

我想要两个事件:在爆炸之前.在爆炸结束时,我想打开对话框.

有人帮我吗?

谢谢你的建议.

android showdialog android-animation

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

Navigator.pop 不会关闭 flutter 中的 simpledialog

我正在使用颤振构建 android 应用程序。我在以编程方式关闭简单对话框时遇到问题。

现在我有一个名为 ListVessel 的有状态页面。此页面包含来自数组 otherVessels 的 listTile。
下面是这个页面的代码。

class ListVessel extends StatefulWidget {
  final Function() notifyParent;
  ListVessel({Key key, @required this.notifyParent}) : super(key: key);

  @override
  _ListVesselState createState() => _ListVesselState();
}

class _ListVesselState extends State<ListVessel> {
  @override
  Widget build(BuildContext context) {
      return ListView.separated(
        separatorBuilder: (context, index) => Divider(color: Colors.blueGrey),
        itemCount: otherVessels.length,
        itemBuilder: (context, index) {
          return ListTile(
            title: Text("Name: "+otherVessels[index]["shipName"]),
            onTap: () {
              showDialog (
                  context: context,
                  builder: (_){
                    return otherTap(idx:index);
                  }
              );
            }
          );
        },
      );
    }
  }
} …
Run Code Online (Sandbox Code Playgroud)

android showdialog navigator simpledialog flutter

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