2024年7月29日 星期一

[ptyhon][Error][solve]cannot import name 'ChannelAuthBase' from 'conda.plugins.types'

===================python Error====================

(base) C:\Users\admin>conda list

Error while loading conda entry point: anaconda-cloud-auth (cannot import name 'ChannelAuthBase' from 'conda.plugins.types' (C:\Users\admin\anaconda3\Lib\site-packages\conda\plugins\types.py))

Error while loading conda entry point: anaconda-cloud-auth (cannot import name 'ChannelAuthBase' from 'conda.plugins.types' (C:\Users\admin\anaconda3\Lib\site-packages\conda\plugins\types.py))

================================================

怎麽發生的不知道, 嘗試過以下更新的指令都無法回復


conda update conda conda update anaconda

conda install anaconda-client conda update -n base -c defaults conda

conda clean --all conda install --force-reinstall conda

來源:https://www.ahuang.xyz/archives/27/

----------------------------------------

安裝新版本

conda install conda=24.3.0

來源 https://blog.csdn.net/Mandy12310/article/details/138201080

================================================

參考 https://blog.csdn.net/2401_83601920/article/details/138917718

1.python -m pip uninstall anaconda-cloud-auth

2.conda update conda

-------------------------------console-------------------------------------------------

(base) C:\Users\admin>python -m pip uninstall anaconda-cloud-auth

Found existing installation: anaconda-cloud-auth 0.5.0

Uninstalling anaconda-cloud-auth-0.5.0:

  Would remove:

    c:\users\admin\anaconda3\lib\site-packages\anaconda_cloud_auth-0.5.0.dist-info\*

    c:\users\admin\anaconda3\lib\site-packages\anaconda_cloud_auth\*

Proceed (Y/n)? Y

  Successfully uninstalled anaconda-cloud-auth-0.5.0


(base) C:\Users\admin>conda update conda

Collecting package metadata (current_repodata.json): done

Solving environment: done


==> WARNING: A newer version of conda exists. <==

  current version: 23.7.4

  latest version: 24.7.1

Please update conda by running

    $ conda update -n base -c defaults conda

Or to minimize the number of packages updated during conda update use

     conda install conda=24.7.1

# All requested packages already installed.

更新成功

2024年5月27日 星期一

[asp.net] DropDownList 的 AutoPostBack 和 onchange

asp.net 的 DropDownList  一般都會用AutoPastBack去做下一動的事件
但若是想要在AutoPastBack 中插入Confrim ,網頁還是會回傳
 
但若用onchange 代AutoPastBack 替即可。

所以 將AutoPastBack 去除,保留 onchange即可。

而javascript 即需要使用
__doPostBack。

以下為範例


============UI==================

<asp:ScriptManager ID="scirptM" runat="server"></asp:ScriptManager>

<asp:UpdatePanel runat="server" ID="up_show" UpdateMode="Conditional">

    <ContentTemplate>

        <asp:DropDownList ID="ddl_a" runat="server"   onchange="return  confirm_change() " OnSelectedIndexChanged="ddl_a_SelectedIndexChanged">

            <asp:ListItem Text="1"></asp:ListItem>

            <asp:ListItem Text="2"></asp:ListItem>

            <asp:ListItem Text="3"></asp:ListItem>

        </asp:DropDownList>


        <asp:DropDownList ID="ddl_b" runat="server"></asp:DropDownList>

    </ContentTemplate>

    <Triggers>

        <asp:AsyncPostBackTrigger ControlID="ddl_a" EventName="SelectedIndexChanged" />

    </Triggers>

</asp:UpdatePanel>

=========== Javascript==================


       function confirm_change() {

           // onchange="javascript: return confirm_change();"

           var pass = confirm("OK");

           console.log(pass);

           if (pass) {

               __doPostBack("ctl00$ContentPlaceHolder1$ddl_a", "ddl_achange");

          //     __doPostBack("Web control Name", " control event ");

           } 

           return pass;

       }

2023年5月10日 星期三

[css]套色用在GridView  



 <style>

        .th {

            background-color: #7BBAA7;

            color: #674F28;

            width: 30%;

        }


        .sysBtn {

            margin: 2px 2px;

            width: 90px;

        }


        table.gvs {

            border: 1px solid #B7B4B5;

            width: 100%;

            text-align: center;

            border-collapse: collapse;

        }


        .hss {

            border-bottom: 2px outset #94614C;

            background-color: #7BBAA7;

            color: #674F28;

            font-weight: bold;

            line-height: 25px;

        }


        .rss:nth-child(odd) {

            background: #D7E6E3;

        }


        tr.pss td {

            background-color: #C8E6C9;

            

        }


        .pss table {

            

            float: right;

            margin: 2px 2px;

            padding: 0 0;

        }


        .pss table tr td { 

            width: 25px;

            height: 25px;

            background-color: #808080;

            color:red;

            vertical-align:middle;

        }


        .pss a {

            display: table-cell;

            width: 25px;

            height: 25px;

            background-color: #808080;

            color: #D7E6E3;

            vertical-align:middle;

            text-decoration:none;

        }


            .pss a:hover {

                display: table-cell;

                width: 25px;

                height: 25px;

                background-color: #b6ff00;

                color: #fff;

            }



        /*    tr.pss table  {

              font-size: 13px;

  font-weight: bold;

  color: #F0F0F0;

  background: #24943A;

  background: -moz-linear-gradient(top, #5baf6b 0%, #3a9e4d 66%, #24943A 100%);

  background: -webkit-linear-gradient(top, #5baf6b 0%, #3a9e4d 66%, #24943A 100%);

  background: linear-gradient(to bottom, #5baf6b 0%, #3a9e4d 66%, #24943A 100%);

  border-top: 1px solid #24943A;

            

        }


        .pss td {

            border:1px solid red;

            text-align:right

        }


        tr.pss table td  {

            background-color:#7BBAA7;

            color:#fff;

            text-decoration:none;

            width:20px;

            height:20px;


        }


        tr.pss a {

            text-decoration:none;

        }*/

    </style>

------------------------------------------

      <asp:GridView ID="gv_user" AutoGenerateColumns="false" AllowPaging="true" runat="server" PageSize="10" OnPageIndexChanging="gv_user_PageIndexChanging"

                    OnRowDataBound="gv_user_RowDataBound" HeaderStyle-CssClass="hss" PagerStyle-CssClass="pss" RowStyle-CssClass="rss" CssClass="gvs">

                    <Columns>

                        <asp:TemplateField HeaderText="選擇">

                            <ItemTemplate>


                                <input type="button" id="getUser" value="確認" onclick="return callback(<%# (Container.DataItemIndex % 10) +1 %>)" class="sysBtn" />

                            </ItemTemplate>

                        </asp:TemplateField>


                        <asp:BoundField HeaderText="部門" DataField="dept_nm" />

                        <asp:BoundField HeaderText="帳號" DataField="logonid" />

                        <asp:BoundField HeaderText="姓名" DataField="name" />

                        <asp:BoundField HeaderText="mail" DataField="email" />

                        <asp:BoundField HeaderText="guid" DataField="id" />

                        <asp:BoundField HeaderText="dept_no" DataField="dept_no" />


                    </Columns>

                </asp:GridView>


------------------------------------------

主要在PagerStyle-CssClass="pss" 做page 數的設定

tr.pss td {主要是設定 floot的顏色} 

.pss table  {設定floot 內的框線格式} 

.pss table tr td{被選定頁數的顯示格式 }

.pss a {尚未被選擇的頁數顯示格式

display: table-cell;  是重點,讓link變成一個區塊block

            width: 25px; //block的大小

            height: 25px;//block的大小

}


.pss a:hover {被滑過的頁籤格式

display: table-cell;  是重點,讓link變成一個區塊block

            width: 25px; //block的大小

            height: 25px;//block的大小

}


2022年12月9日 星期五

[OpenCV][分類器]opencv_haartraining and opencv_traincascade

OpenCV中有两个程序可以训练级联分类器: opencv_haartraining and opencv_traincascade。opencv_traincascade 是一个新程序,使用OpenCV 2.x API 以C++ 编写。这二者主要的区别是 opencv_traincascade 支持 Haar [Viola2001] 和 LBP [Liao2007] (Local Binary Patterns) 两种特征,并易于增加其他的特征。与Haar特征相比,LBP特征是整数特征,因此训练和检测过程都会比Haar特征快几倍。LBP和Haar特征用于检测的准确率,是依赖训练过程中的训练数据的质量和训练参数。训练一个与基于Haar特征同样准确度的LBP的分类器是可能的。

————————————————

版权声明:本文为CSDN博主「Thomson617」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/Thomson617/article/details/100894991

2022年9月7日 星期三

asp.net 2.0 升級4.0 問題1 元件名稱

 近日公司想要將asp.net 2.0的網站升級至 asp.net 4.0 

需要評估網站升級需要的OS & Framework  的等級 

就目前微軟在2022年公佈的 .NET Framework 各版本發行及 EOS 時間清單

的資料看來,應該可以升級到到asp.net 4.5之間,

但我們遇到的第一個問題就是

asp.net2.0 轉出的元件id  [ctl00_ContentPlaceHolder1_PanelParent]

asp.net 4.0 轉出的元件id為  [PanelParent]

Wath?

原來是因為 ASP.NET 4.0 預設的 clientIDMode 是使用 Predictable


而ASP.NET 4.0 以前的版本 clientIDMode 都是使用 AutoID

 

處理的方法就是在web.config 中設定

<system.web>
<pages controlRenderingCompatibilityVersion="4.5" clientIDMode="AutoID">
</system.web>


暫時收工……

參考:

https://www.dotnetcurry.com/ShowArticle.aspx?ID=492 介紹 ClientIDMode 的用法

https://blog.darkthread.net/blog/net-4x-eos-issue/ 其他

https://dotblogs.com.tw/rainmaker/2014/09/15/146557 -為什麼我的控制項的 id 多了ctl00



來看

2021年7月1日 星期四

[jquery-animate]錨點鏈接-滑動 需註意事項

 想做出html書 籤在同頁移動滑行 

在 html_load 時載入


 $('a[href*=\\#]:not([href=\\#])').click(function () {

                    // 選擇元素是<a>, 且href包含(*=)'#',但不是(not)'#'

                    // 當元素 $('a(...ry)')被按下(click)後執行 function(){...}

                    var target = $(this.hash);

                    

                    // 設target為網址錨點(this.hash)元素

                    $('html,body').animate({

                        // 網頁(html,body)執行動畫(animate)

                        scrollTop: target.offset().top

                        // 向上捲動(scrollTop): 距離( target於網頁相對位置(offset)的y座標(top) )

                    }, 1000);

                    // 執行時間1000ms

                    return false; // 停止動作

                }); // END $('a(...ry)').click

           });

一直有異常 後來發現一篇文章說明 
今天在移轉舊專案程式碼,遇到jquery一些錯誤,
查了一下原來是用的2.x版有特殊字元要跳脫的問題,記錄一下。

Syntax error, unrecognized expression:

your selector is not valid. # is a special char and needs to be escaped like 'a[href*=\\#]:not([href=\\#])'

來源:http://iambigd.blogspot.com/2017/06/jquery-syntax-error-unrecognized.html

原來#在javascript 是特殊字元 

所以一直在鬼打牆,特記之;


 

2021年6月9日 星期三

RadioButtonList的預設值

 猜一猜   Radio的預設值是否一樣呢

-----------------------------------------------Q1------------------------------------------------

if (!IsPostBack)

        {

            ListItem[] lis = new ListItem[5];

            lis[0] = new ListItem("1", "1");

            lis[1] = new ListItem("2", "2");

            lis[2] = new ListItem("3", "3");

            lis[3] = new ListItem("4", "4");

            lis[4] = new ListItem("5", "5");


            for (int i = 1; i <= 5; i++)

            {


                RadioButtonList rbt = (RadioButtonList)p_test.FindControl("rbt_" + i);

                 

                rbt.Items.AddRange(lis);

                rbt.SelectedValue = (i).ToString();

            } 

        }

-----------------------------------------------Q2------------------------------------------------

  if (!IsPostBack)

        { 

            for (int i = 1; i <= 5; i++)

            {


                ListItem[] lis = new ListItem[5];

                lis[0] = new ListItem("1", "1");

                lis[1] = new ListItem("2", "2");

                lis[2] = new ListItem("3", "3");

                lis[3] = new ListItem("4", "4");

                lis[4] = new ListItem("5", "5");


                RadioButtonList rbt = (RadioButtonList)p_test.FindControl("rbt_" + i);

                 

                rbt.Items.AddRange(lis);

                rbt.SelectedValue = (i).ToString();

            } 

        }

------------------------------------A1------------------------------------------


------------------------------------A2------------------------------------------


=============================================================

結果不同o 為什麼呢?

因為  ListItem[]  是要重新宣告的

不然 所有的 RadioButtonList.SelectedValue 

 只會抓 最後一個的預設值 做默認。

顯示的 結果就是A1

反之 有重新宣告  ListItem[] 

預設值就會正確。

大家可以試試看o