项目记录(C#施工管理系统)

项目中遇到的问题:

1.c#开始学习中,创建一个二维数组都费劲,使用java的那种形式会出错。

多维数组:c#中无论是几维数组只用一个中括号[]来表示。

//二维数组:
int[,] array=new int[3,2];
//初始化:
 int[,] arr = new int[2,3]{{1,2,3},{4,5,6}};

与java总类似的int[][]两个中括号的定义是交错数组,相当于一个一维数组的嵌入

//交错数组:后一个中括号中不能有值
int[][] arr = new int[2][];
//初始化
int[][] arr = new  int[2][]{new int{1,3,2},new int{4,5,6}};

对于数组也可以使用循环赋值初始化。

2.项目中前端需要显示数据库中特定值考前的下拉菜单

在这里插入图片描述使用sql语句:

将数据表中的的特定语句放在最前面:
方式一:
select * from [dbo].[CTS_DUTIES]  where [DUTIES_ID] ='特定值'
union all 
select * from [dbo].[CTS_DUTIES] where [DUTIES_ID] <>'特定值'
方式二:
select case when [DUTIES_ID] ='特定值' then 0 else 1 end flag,* FROM [dbo].[CTS_DUTIES]
ORDER BY flag asc

3.在一个下拉列表中选择的是一个树级菜单

在这里插入图片描述使用的控件:
在ASPxDropDownEdit控件中嵌入一个TreeList控件。

<!--js程序-->
 <script type="text/javascript">
        function ss() {
            
            var key = treeListUnit.GetFocusedNodeKey();
            Panel_call.PerformCallback(key);
            ASPxItem.HideDropDown();
        }
 </script>
<!--htmlbody中程序-->
 <td>
                        <dx:ASPxCallbackPanel ID="ASPxCallbackPanel_call" ClientInstanceName="Panel_call" runat="server" Width="200px" OnCallback="ASPxCallbackPanel_call_Callback">
                            <PanelCollection>
                                <dx:PanelContent>
                                    <dx:ASPxDropDownEdit ID="dropdown_branch" Theme="Moderno" runat="server" Width="170px" EnableAnimation="False"
                                        ClientInstanceName="ASPxItem" OnPreRender="ASPxDropDownEdit2_PreRender">
                                        <DropDownWindowTemplate>
                                            <div style="height: 300px; width: 270px; overflow: auto">
                                                <dx:ASPxTreeList ID="ASPxTreeList1" runat="server" AutoGenerateColumns="False" Theme="Aqua"
                                                    ClientInstanceName="treeListUnit"
                                                    KeyFieldName="MenuId" ParentFieldName="UpperMenuId">
                                                    <SettingsText LoadingPanelText="正在加载..." />
                                                    <Styles>
                                                        <AlternatingNode Enabled="True" CssClass="GridViewAlBgColor" />
                                                        <Header HorizontalAlign="Center" />
                                                        <%--#d8d8d8--%>
                                                        <FocusedNode BackColor="#d8d8d8" ForeColor="teal"></FocusedNode>

                                                    </Styles>
                                                    <Columns>
                                                        <dx:TreeListTextColumn Caption="组织架构名称" FieldName="MenuName" VisibleIndex="0">
                                                            <CellStyle HorizontalAlign="Left">
                                                            </CellStyle>
                                                            <EditFormSettings VisibleIndex="0" Visible="True" />
                                                        </dx:TreeListTextColumn>

                                                    </Columns>
                                                    <SettingsLoadingPanel Text="正在加载..." />
                                                    <Settings SuppressOuterGridLines="True" GridLines="Horizontal" />
                                                    <SettingsBehavior AllowFocusedNode="True" AutoExpandAllNodes="true" ExpandCollapseAction="NodeDblClick" />
                                                    <ClientSideEvents NodeDblClick="function(s, e) {
ss();
}" />
                                                    <Border BorderStyle="Solid" />

                                                </dx:ASPxTreeList>

                                            </div>
                                            <div>
                                                <dx:ASPxHiddenField ID="ASPxHiddenField_orgname" ClientInstanceName="hid_orgname" runat="server"></dx:ASPxHiddenField>
                                            </div>
                                        </DropDownWindowTemplate>
                                    </dx:ASPxDropDownEdit>
                                </dx:PanelContent>
                            </PanelCollection>
                        </dx:ASPxCallbackPanel>
                    </td>

HiddenField的作用是将数据库中的ID放置在隐藏域,在文本框中显示名称。

//treelist的获取与绑定
 DataTable dt = comm.SELECT_DATA(string.Format("select * from POWER_CONSTRUC_TPERSON where SERIAL_ID='{0}'", edit.Split(',')[0])).Tables[0];
            ASPxTreeList treeList = (ASPxTreeList)dropdown_branch.FindControl("ASPxTreeList1");
            treeList.DataSource = org_manager.GetZT_ORGANIZATION();
            treeList.DataBind();
//隐藏域获取以及绑定
 ASPxHiddenField hidden_org = (ASPxHiddenField)dropdown_branch.FindControl("ASPxHiddenField_orgname");
                //单位信息hidden_org
                person.UNIT_CODE = hidden_org.Get("hidden_org").ToString();
               
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值