zoukankan      html  css  js  c++  java
  • How to: Create and Show a Detail View of the Selected Object in a Popup Window 如何:在弹出窗口中创建和显示选定对象的详细信息视图

    This topic demonstrates a View Controller that creates and shows a Detail View of the List View's selected object in a popup window.

    本主题演示在弹出窗口中创建和显示列表视图所选对象的详细信息视图的视图控制器。

    Follow the steps below.

    • Create a View Controller with the PopupWindowShowAction.
    • Handle the Action's PopupWindowShowAction.CustomizePopupWindowParams event.
    • In the event handler, create an Object Space using the XafApplication.CreateObjectSpace method.
    • Get the object corresponding to the View.CurrentObject using the IObjectSpace.GetObject method.
    • Create a new Detail View using the XafApplication.CreateDetailView method and pass it to the CustomizePopupWindowParamsEventArgs.View parameter.
    • Optionally, you can customize the Detail View properties (e.g., DetailView.ViewEditMode value).

    按照以下步骤操作。

    • 使用弹出窗口窗口显示操作创建视图控制器。
    • 处理操作的弹出窗口窗口显示操作。
    • 在事件处理程序中,使用 XafApplication.CreateObjectSpace 方法创建对象空间。
    • 使用 IObjectSpace.GetObject 方法获取与 View.Current 对象对应的对象。
    • 使用 Xaf 应用程序创建新的明细视图.创建细节视图方法并将其传递给"自定义弹出窗口ParamsEventArgs.Views"参数。
    • 或者,您可以自定义"详细视图"属性(例如,详细信息视图.ViewEditMode 值)。
    using DevExpress.ExpressApp;
    using DevExpress.ExpressApp.Actions;
    using DevExpress.ExpressApp.Editors;
    using DevExpress.Persistent.Base;
    //...
    public class ShowDetailViewController : ViewController<ListView> {
        public ShowDetailViewController() {
            PopupWindowShowAction showDetailViewAction = new PopupWindowShowAction(
                this, "ShowDetailView", PredefinedCategory.Edit);
            showDetailViewAction.SelectionDependencyType = SelectionDependencyType.RequireSingleObject;
            showDetailViewAction.TargetObjectsCriteria = "Not IsNewObject(This)";
            showDetailViewAction.CustomizePopupWindowParams += showDetailViewAction_CustomizePopupWindowParams;
        }
        void showDetailViewAction_CustomizePopupWindowParams(
            object sender, CustomizePopupWindowParamsEventArgs e) {
            IObjectSpace newObjectSpace = Application.CreateObjectSpace(View.ObjectTypeInfo.Type);
            Object objectToShow = newObjectSpace.GetObject(View.CurrentObject);
            if (objectToShow != null) {
                DetailView createdView = Application.CreateDetailView(newObjectSpace, objectToShow);
                createdView.ViewEditMode = ViewEditMode.Edit;
                e.View = createdView;
            }
        }
    }

    In this example, the root Detail View is created using an individual Object Space. The root View contains the Save Action and users can explicitly commit changes. You can customize this behavior using the CreateDetailView method overload with the isRoot parameter, or by providing a nested or existing Object Space instead of a new one. Refer to the View.IsRoot property documentation to learn more.

    在此示例中,使用单个对象空间创建根详细信息视图。根视图包含保存操作,用户可以显式提交更改。您可以使用使用 isRoot 参数重载的 CreateDetailView 方法自定义此行为,或者提供嵌套或现有对象空间而不是新对象空间。有关详细信息,请参阅 View.IsRoot 属性文档。

  • 相关阅读:
    算法的学习 — 冒泡排序
    自定义UICollectionLayout布局 —— UIKit之学习UICollectionView记录一《瀑布流》
    HDU 1541 Stars (线段树||树状数组)
    HDU 1617 Phone List (排序||字典树)
    CSU 1312 CX and girls (最短路)
    CSU 1320 Scoop water (卡特兰数)
    POJ 1838 Banana (并查集)
    POJ 1837 Balance (DP)
    POJ 1088 滑雪 (记忆化搜索)
    TYVJ 1261 可达总数 (BFS)
  • 原文地址:https://www.cnblogs.com/foreachlife/p/How-to-Create-and-Show-a-Detail-View-of-the-Selected-Object-in-a-Popup-Window.html
Copyright © 2011-2022 走看看