Пример #1
0
        // Load stock list specified in the user's portfolio
        protected void LoadPortfolioStock()
        {
            StringCollection stockList = new StringCollection();
            TreeNode         node;

            data.baseDS.portfolioDataTable portfolioTbl = new data.baseDS.portfolioDataTable();
            portfolioTbl.Clear();
            myStockCodeTbl.Clear();
            dataLibs.LoadPortfolioByInvestor(portfolioTbl, sysLibs.sysLoginCode, AppTypes.PortfolioTypes.Portfolio);
            stockTV.Nodes.Clear();
            DataView myStockView = new DataView(myStockCodeTbl);

            data.baseDS.stockCodeRow stockRow;
            myStockView.Sort = myStockCodeTbl.codeColumn.ColumnName;

            StringCollection list = new StringCollection();

            for (int idx1 = 0; idx1 < portfolioTbl.Count; idx1++)
            {
                node = stockTV.Nodes.Add(portfolioTbl[idx1].name);

                list.Clear();
                list.Add(portfolioTbl[idx1].code);
                myStockCodeTbl.Clear();
                if (portfolioTbl[idx1].type == (byte)AppTypes.PortfolioTypes.WatchList)
                {
                    dataLibs.LoadStockCode_ByWatchList(myStockCodeTbl, list);
                }
                else
                {
                    dataLibs.LoadStockCode_ByPortfolios(myStockCodeTbl, list);
                }

                stockList.Clear();
                for (int idx2 = 0; idx2 < myStockView.Count; idx2++)
                {
                    stockRow = (data.baseDS.stockCodeRow)myStockView[idx2].Row;
                    //Ignore duplicate stocks
                    if (stockList.Contains(stockRow.tickerCode))
                    {
                        continue;
                    }
                    stockList.Add(stockRow.tickerCode);
                    node.Nodes.Add(stockRow.tickerCode);
                }
                node.Text = node.Text + "(" + node.Nodes.Count.ToString() + ")";
                node.ExpandAll();
            }
        }