0

asp.netウィザードコントロールの次のコードスニペットがdatagridviewフッター内に埋め込まれていて、ニーズに応じて完全に機能しています。Firefox、Chrome、Operaでも正しくレンダリングされますが、IE 10にアップグレードすると、ウィザード全体が歪んでしまいます。

私たちのクライアントのほとんどはIE狂信者です。悲しい。

IEとFireFoxの画像リンク

ウィザードが存在するテンプレートフィールドのマークアップ

<asp:TemplateField HeaderText="ISCID">
                    <ItemTemplate>
                    <asp:Label ID="Label1" runat="server" SortExpression="ISCID" Text='<%# Eval("ISCID") %>' ReadOnly="true" />
                    </ItemTemplate>

                    <FooterTemplate>
                        <asp:Panel runat="server" ID="FooterMessagePanel1" Style="text-align: center" Wrap="False">
                       <asp:Label runat="server" ID="LabelFooterMessage1" Text="Click the + button to initiate a new transfer" />
                        </asp:Panel>

                        <asp:Panel runat="server" ID="TransferWizardPanel" Style="display: none" Width="100%" Wrap="False">

                            <asp:Wizard ID="TransferWizard" DisplayCancelButton="true" runat="server" HeaderText="Share transfer Wizard"
                                HeaderStyle-Font-Size="Larger"
                                HeaderStyle-CssClass="CaptionLabelGVsm"
                                OnFinishButtonClick="TransferWizard_FinishButtonClick"
                                OnCancelButtonClick="TransferWizard_CancelButtonClick"
                                OnActiveStepChanged="TransferWizard_ActiveStepChanged"
                                StepNextButtonType="Image"
                                StepNextButtonImageUrl="~/images/Next16.png"
                                StepPreviousButtonType="Image"
                                StepPreviousButtonImageUrl="~/images/Previous16.png"
                                CancelButtonType="Image"
                                CancelButtonImageUrl="~/images/Cancel16.png"
                                ActiveStepIndex="0" Width="100%">

                                <SideBarTemplate>
                                    <asp:DataList ID="SideBarList" runat="server" OnItemDataBound="SideBarList_ItemDataBound" HorizontalAlign="Justify" RepeatDirection="Horizontal">
                                        <ItemTemplate>
                                            <asp:LinkButton ID="SideBarButton" ForeColor="Black" runat="server" CssClass="MenuBar"></asp:LinkButton>
                                        </ItemTemplate>
                                    </asp:DataList>

                                    </tr><tr>
                                </SideBarTemplate>
                                <StartNavigationTemplate>
                                    <asp:Panel ID="panStart" runat="server">
                                        <asp:ImageButton runat="server" ID="imgStart" ImageUrl="~/images/Next16.png"
                                            CommandName="MoveNext" />
                                        <asp:ImageButton ID="startCancelButton" runat="server" CausesValidation="False" CommandName="Cancel" ImageUrl="~/images/Edit_UndoHS.png" OnClientClick="return confirm('Are you sure you want to cancel');" />
                                    </asp:Panel>
                                </StartNavigationTemplate>
                                <StepNavigationTemplate>

                                    <asp:ImageButton ID="StepPreviousButton" runat="server" CausesValidation="False" CommandName="MovePrevious" ImageUrl="~/images/Previous16.png" />
                                    <asp:ImageButton ID="StepNextButton" runat="server" CausesValidation="true" CommandName="MoveNext" ImageUrl="~/images/Next16.png" />
                                    <asp:ImageButton ID="CancelButton" runat="server" CausesValidation="False" CommandName="Cancel" ImageUrl="~/images/Edit_UndoHS.png" />
                                </StepNavigationTemplate>
                                <FinishNavigationTemplate>
                                    <asp:ImageButton ID="FinishButton" runat="server" CausesValidation="False" CommandName="MoveComplete" ImageUrl="~/images/Finish16.png" />

                                </FinishNavigationTemplate>

                                <WizardSteps>
                                    <asp:WizardStep ID="WizardStep1" runat="server" Title="Transferor Details">
                                        <asp:Panel runat="server" ID="TransferFromAllotmentsPanel" Style="display: none">
                                            <table class="TableControlGV" style="width: 100%">
                                                <tr>
                                                    <td class="LabelColumnGV" style="text-align: left">Class</td>

                                                    <td class="DescColumnGV">
                                                        <asp:TextBox ID="AllotClassGVDDList" Width="100%" runat="server" CssClass="classInput" ReadOnly="False" />
                                                          <asp:RequiredFieldValidator ID="RequiredFieldValidatorAllotClass" runat="server" ControlToValidate="AllotClassGVDDList" Text="" InitialValue=""
                                                            Display="Dynamic" ErrorMessage="Enter share class"></asp:RequiredFieldValidator>
                                                    </td>
                                                </tr>
                                            </table>

                                            <table class="TableControlGV" style="width: 100%">
                                            <tr>
                                                <td colspan="6" class="CaptionLabelGVsm" style="text-align: left">Avalaible Certificates</td>
                                            </tr>
                                            <tr>
                                                <td style="width: 100%">

                                                    <asp:GridView ID="TrnsfreeWizardGridView" runat="server" AutoGenerateColumns="False" DataKeyNames="ISCID,ClassCode"
                                                        CssClass="grid" Width="100%" OnRowEditing="TrnsfreeWizardGridView_RowEditing"
                                                        EnableModelValidation="True" ShowFooter="False">
                                                        <RowStyle CssClass="GridViewRow" />
                                                        <SelectedRowStyle CssClass="GridViewRowSelected" />
                                                        <EditRowStyle BackColor="Azure" />
                                                        <EditRowStyle CssClass="GridViewRowEdit" />
                                                        <AlternatingRowStyle CssClass="GridViewRowAlt" />
                                                        <Columns>



                                                        </Columns>

                                                        <EmptyDataTemplate>



                                                        </EmptyDataTemplate>

                                                        <FooterStyle CssClass="CaptionLabelGVsm" />

                                                    </asp:GridView>
                                                </td>
                                            </tr>
                                        </table>

                                        </asp:Panel>
                                    </asp:WizardStep>
                                    <asp:WizardStep ID="WizadStep2" runat="server" Title="Transfer Details">

                                        <asp:Panel ID="NewTransferPanel" runat="server" Style="display: block" Width="100%">

                                        </asp:Panel>

                                    </asp:WizardStep>

                                    <asp:WizardStep ID="WizardStep3" runat="server" Title="Transfer Summary" OnActivate="WizardStep2_Activate">

                                        <asp:Panel ID="TransferSummaryPanel" runat="server">


                                            <asp:GridView ID="GridViewSummary" runat="server" AutoGenerateColumns="False" CssClass="grid">
                                                <Columns>
                                                    <asp:BoundField HeaderText="Date" DataField="TransDate" />
                                                    <asp:BoundField HeaderText="Transferor" DataField="Transferor" />
                                                    <asp:BoundField HeaderText="Transferee" DataField="Transferee" />
                                                    <asp:BoundField HeaderText="Class" DataField="ShareClass" />
                                                    <asp:BoundField HeaderText="OldCertNo" DataField="OldCertNumber" />
                                                    <asp:BoundField HeaderText="NewCertNo" DataField="NewCertNumber" />
                                                    <asp:BoundField HeaderText="Amount" DataField="Amount" />
                                                    <asp:BoundField HeaderText="Shares" DataField="Shares" />
                                                </Columns>
                                            </asp:GridView>
                                        </asp:Panel>

                                    </asp:WizardStep>

                                    <asp:WizardStep ID="WizardStep4" runat="server" Title="Transfer Complete">
                                        <asp:Panel ID="PanelComplete" runat="server" Style="display: block">

                                            <asp:Label ID="LabelMessage" runat="server" Text="Share transfer completed successfully<br>Click Finish to exit wizard or new to add a new transfer"></asp:Label>
                                            <asp:ImageButton ID="ButtonNew" runat="server" Text="New Transfer" OnClick="ButtonNew_Click" ImageUrl="~/images/add.png" />

                                        </asp:Panel>

                                    </asp:WizardStep>

                                </WizardSteps>
                            </asp:Wizard>

                        </asp:Panel>
                    </FooterTemplate>


                </asp:TemplateField>

私はこの問題を修正するために何時間も努力してきましたが、頑固なIE10によってすべての試みが妨げられました。壁に頭をぶつけないようにしてください。サイドバーテンプレートの異常なtr開閉タグはハックです(このフォーラムで)サイドバーメニューを強制的に水平に実行し、レンダリングの問題の原因ではないようです。

前もって感謝します

4

1 に答える 1

1

Eureka !!!!。IE10が、行作成イベントに設定された初期幅をオーバーライドできなかったことがわかりました。このコードスニペットをdatagridviewの行データバインドイベントに配置することで、

If e.Row.RowType = DataControlRowType.Footer Then
         If Request.Browser.Type = "IE7" Then
                    e.Row.Cells(1).Width = 800
                    e.Row.Cells(1).HorizontalAlign = HorizontalAlign.Left
         End if
End if

私の問題は解決しました。VisualStudio2012でIE10ブラウザーの種類がIE7として検出される方法がおかしい。

于 2012-12-19T06:46:36.493 に答える