繁体   English   中英

项目复选框来自哪里

[英]Where does the Item tickbox come from

我目前有一个DetailsView(曾经是一个Formview,但它是一个带有Masterpage 和ObjectDataSource 的nogo)。

不知何故,我在源代码中找不到图形中的“项目 []”(复选框)。 它在“Kommentar:”之后和“Dato:”之前以图形方式找到

                <asp:DetailsView ID="dv_InsertComment" runat="server" DefaultMode="Insert" DataSourceID="ods_InsertComment"
                    HeaderText="Kommentar:">
                    <Fields>
                        <asp:TemplateField HeaderText="Dato:">
                            <InsertItemTemplate>
                                <asp:Label ID="dNow" runat="server" Text='<%# DateTime.Now.ToShortDateString() %>'></asp:Label>
                            </InsertItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="Konto" Visible="false">
                            <InsertItemTemplate>
                                <asp:TextBox ID="tbAccountIns" runat="server"></asp:TextBox>
                            </InsertItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="Kommentar:">
                            <InsertItemTemplate>
                                <asp:TextBox ID="tbCommentIns" runat="server" Rows="3" Columns="50" TextMode="MultiLine"></asp:TextBox>
                            </InsertItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="Status:">
                            <InsertItemTemplate>
                                <asp:DropDownList ID="StatusList" runat="server" DataSourceID="ods_StatusOptions"
                                    DataTextField="name">
                                </asp:DropDownList>
                            </InsertItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="Fremnotering:">
                            <InsertItemTemplate>
                                <asp:DateBox ID="dFuture" runat="server" AllowNullDate="true" />
                            </InsertItemTemplate>
                        </asp:TemplateField>
                        <asp:ButtonField ButtonType="Button" Text="Indsæt kommentar" CommandName="Insert" />
                        <asp:ButtonField ButtonType="Button" Text="Annuller" CommandName="Cancel" />
                    </Fields>
                </asp:DetailsView>

除此之外,参数列表需要一个“。” 在 NewDate 之后:又名它需要“员工、帐户、评论、类型、状态、NewDate。!”

                <asp:ObjectDataSource ID="ods_InsertComment" runat="server" InsertMethod="InsertComment"
                    TypeName="OurClient.Host.CommentsBLL" SelectMethod="GetNothing">
                    <InsertParameters>
                        <asp:SessionParameter Name="employee" SessionField="employee" DbType="String" />
                        <asp:Parameter Name="Account" DbType="String" />
                        <asp:Parameter Name="Comment" DbType="String" />
                        <asp:Parameter Name="Type" DefaultValue="0" DbType="Int32" />
                        <asp:Parameter Name="Status" DbType="Int32" />
                        <asp:Parameter Name="NewDate" DbType="DateTime" />
                    </InsertParameters>
                </asp:ObjectDataSource>

我在想如果我删除项目和复选框,“。” 参数go 也会掉吗? 但如果它不存在,我该如何删除它?

我已经删除了整个<Fields></Fields>只是为了只剩下 Item [] 。 我将DefaultMode="Insert"移出,并且 Item [] 变灰(不可点击)。 正如我在开头所说的那样 - DetailsView是一种解决方案,而不是FormView

在您询问GetNothing是一项要求之前,它必须定义一个SelectMethod 除非它在那里,否则无法编译它。

解决方案: <asp:detailsview....>上的AutoGenerateRows="False"

我是怎么发现那个的? 我转到有问题的 aspx,更改为拆分视图并继续分析实际存在的控件。 我有点偶然发现了自动生成复选框。

您是否搜索过代码隐藏文件?

也许复选框被注入?

复选框的 id 是“ContentPlaceHolder2_dv_InsertComment_ctl01”,它可以是动态添加的控件。

检查您的代码隐藏文件中是否有任何字符串,例如“InsertComment”或“dv_”或“_dv”等,然后查看。

我只是在猜测。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM