带预览的PXGrid - 预览未显示

时间:2018-02-14 19:59:29

标签: acumatica

我正在尝试在我的一个自定义网格中显示预览文本。这类似于“案例”屏幕上的“活动”选项卡(CR306000)。我写了下面的代码,但如果我从网格中选择活动,它仍然没有显示预览文本。请建议。

DataView代码 -

[PXFilterable]

        [PXPreview(typeof(CRAcumaticaActivity))]

        [PXViewName("AcumaticaActivities")]

        public PXSelect<CRAcumaticaActivity,

        Where<CRAcumaticaActivity.cloud9CaseID, Equal<Current<CRCase.caseCD>>>,

        OrderBy<Desc<CRAcumaticaActivity.lastModifiedByDateTime>>> AcumaticaActivities;

gridwithpreview的HTML代码 -

<px:PXTabItem Text="Acumatica Activities" LoadOnDemand="True">
    <Template>
      <pxa:PXGridWithPreview runat="server" PrimaryViewControlID="form" PreviewPanelStyle="z-index: 100; background-color: Window" GridSkinID="Inquire" PreviewPanelSkinID="Preview" NoteField="" AllowSearch="True" BlankFilterHeader="All Acumatica Activities" MatrixMode="true" DataSourceID="ds" DataMember="AcumaticaActivities" ID="grdAActivities" BorderWidth="0px" Width="100%">
        <AutoSize Enabled="True" MinWidth="100" MinHeight="100" />
        <ActionBar ActionsText="true" DefaultAction="AcuViewActivity" PagerVisible="False">
          <CustomItems>
            <px:PXToolBarButton Text="Get Activities">
              <AutoCallBack Target="ds" Command="GetActivities" /></px:PXToolBarButton>
            <px:PXToolBarButton Text="Publish Activity">
              <AutoCallBack Target="ds" Command="PublishActivity" /></px:PXToolBarButton></CustomItems></ActionBar>
        <GridMode AllowAddNew="False" AllowUpdate="False" AllowDelete="False" AllowFormEdit="False" AllowUpload="False" />
        <Levels>
          <px:PXGridLevel DataMember="AcumaticaActivities">
            <RowTemplate />
            <Columns>
              <px:PXGridColumn DataField="ActivityID" Visible="False" AllowShowHide="False" AutoCallBack="true" />
              <px:PXGridColumn DataField="Type" Width="250px" AutoCallBack="" />
              <px:PXGridColumn DataField="Summary" Width="20" LinkCommand="AcuViewActivity" Visible="" />
              <px:PXGridColumn DataField="Status" Width="50px" />
              <px:PXGridColumn DisplayFormat="g" DataField="StartDate" Width="90px" />
              <px:PXGridColumn DataField="Owner" Width="90px" /></Columns></px:PXGridLevel></Levels>
        <PreviewPanelTemplate>
          <px:PXHtmlView runat="server" DataField="Description" ID="edAcuDescrip" Height="100px" SkinID="Label" Width="100%">
            <AutoSize Enabled="true" Container="Parent" /></px:PXHtmlView></PreviewPanelTemplate>
        <CallbackCommands>
          <Refresh PostData="Page" CommitChanges="True" /></CallbackCommands></pxa:PXGridWithPreview></Template></px:PXTabItem></Items>
        <AutoSize Container="Window" Enabled="True" MinHeight="100" MinWidth="300" ></AutoSize>
    </px:PXTab>

2 个答案:

答案 0 :(得分:0)

我正在尝试重新创建您的设置,但是太多涉及让它完全正常工作。但是,我确实注意到PXHtmlView控件上的DataField属性指向Description。它可能没什么区别,但尝试用小写D将其更改为description,看看是否能解决问题。我相信DataField属性需要指向DAC中的类而不是属性本身。

希望有所帮助。

答案 1 :(得分:0)

终于找到了答案,现在正在运作。

您应该将PXPreview属性添加到数据视图中。其中第一个参数应该是您的基本DAC,第二个参数应该是子参数。

例如 -

[PXPreview(typeof(CRCase), typeof(CRAcumaticaActivity))]