XAMARIN, llamar a otra actividad

publicado por: Anonymous Me gustaria poder moverme en Xamarin por diferentes Activity, desde el MainActivity desde un button puedo ir a la siguiente actividad (MenuNumeros): base.OnCreate(bundle); SetContentView(Resource.Layout.Main); Button button = FindViewById<Button>(Resource.Id.btnNumeros); button.Click += delegate { SetContentView(Resource.Layout.MenuNum); }; Pero desde este activity necesito volver a ir a un tercer activity que no logro que me funcione,…(Continue Reading)

C# WPF タッチキーボードを表示させたくない

投稿者: Anonymous お世話になっています。 C#のWPFでアプリを開発しています。 Windows10のタブレットモードで、TextBoxをタップすると自動的にタッチキーボードが表示されますが、これを表示させないようにしたいです。 タッチキーボードの代わりに、画面内にキーボード風にボタンを並べてそれをタッチして入力するようにしたいですが、自動的に表示されるタッチキーボードが邪魔になるためです。 以下試してみたことです。 テキストボックスのPreviewGotKeyboardFocusイベントでEventArgsのHandledをtrueにする。 →キーボードは出なくなりましたがフォーカスも当たらなくなりました。 テキストボックスのGotFocusイベントでWindowsのプロセスからtabtipを探し出し、KILLする。 →キーボードは出なくなりましたが、エクスプローラー等でもキーボードが出なくなり文字入力ができなくなってしまいました。 何かいい方法をご存知の方いらっしゃいませんか? よろしくお願いいたします。 解決 お世話になっております。 自己レスですが、解決方法を見つました。 少しアプローチが違い、気持ちの良い方法ではありませんが、以下のURLを参考にし、TextBoxのGotKeyboardFocusでキーボードを閉じる処理を入れることで実現できました。 https://stackoverflow.com/questions/17090325/show-hiding-the-windows-8-on-screen-keyboard-from-wpf 実装したコードは次のような感じです。 txtCode.GotKeyboardFocus += (sender, eventArg) => { int iHandle = FindWindow(“IPTIP_Main_Window”, “”); if (iHandle > 0) { // close the window using API SendMessage(iHandle, WM_SYSCOMMAND, SC_CLOSE, 0); } //オリジナルのキーボードを表示する処理・・・ } 以上です。 他に何かいい方法があれば、ご教示お願いいたします。 回答者: Anonymous

変数宣言 “var hoge = (Clazz)null;” と “Clazz hoge;” の違い

投稿者: Anonymous タイトルの通りです。 変数宣言時に var で統一するために敢えてキャストして null を代入する方法と、 きちんと型を指定した場合で処理速度等のパフォーマンスに差が出たりとか、違いがあったりするのでしょうが? 私の妄想ですが、これくらいの差異、コンパイラがうまく最適化している気もしますが… static void Main(string[] args) { var hoge = (Clazz)null; Clazz fuga; } public class Clazz { // 任意のユーザークラス } 解決 C#言語ではコンパイラはほとんど最適化を行わず、愚直にコード生成します。null代入のコードが書かれれば、 ldnull stloc.0 とそのままのコードになります。 その上でこの程度のコードにコストはほぼかからないでしょうし、JITによる最適化で、差異はほぼなくなると思います。 別の視点で、null代入すべきではありません。適切なスコープで変数を宣言・代入することで、変数の値が常に有効になるようにコードを記述し、nullになるタイミングを極力減らすべきです。 C#言語では変数を宣言しても値を代入するまでは参照できません。代入前に参照するコードはコンパイラーがエラーとして検出します。null代入するコーディング規約を定めてしまうと、これが有効に機能せず、コードが安全でなくなります。 当たり前ですが、変数が常にnullにならないのであれば、nullテストが不要になりコードがより安全になります。 加えてC# 8.0でnull許容参照型が導入されました。変数や戻り値がnullになり得るかをコードで表現できるようになり、またコンパイラーがチェックできるようになりました。 以上のことから、var hoge = (Clazz)null;という表現は避けるべきです。 回答者: Anonymous

mvc recuperar datos desde vista y refrescar

publicado por: Anonymous Tengo una sola vista en mi proyecto, de la cual el usuario tiene que introducir un nombre de cliente para buscarlo en un buzon de correo. <form action=”registrarCliente” method=”post”> <input id=”textCliente” name=”textCliente” /> <input id=”btnAdd” type=”submit” value=”Añadir” /> </form> <form action=”eliminarCliente” method=”post”> <input id=”textCliente” name=”textCliente” /> <input id=”btnDel” type=”submit” value=”Eliminar” /> </form>…(Continue Reading)

ASP.NETのWebサイトと Webアプリケーションの違い

投稿者: Anonymous これは一昨年のことですが、ASP.NETサイト開発の新人が入社されて、既存サイトの維持作業から任されました。彼は彼の先輩になぜ、サイトAが立ち上がるのは早いに対して、サイトBは初回のみ立ち上がるのが遅いと聞いたところ、その先輩はサイトBが独自の設定あるので、初回だけ遅いよと答えた。私はちょっと不思議に思いならがコードをみたら、サイトAがWebアプリケーションに対して、サイトBがWebサイトでした。 Webサイトだから、事前コンパイルしなかったら、ランタイムで最初のリクエストでコンパイルするので時間がかかると説明した覚えがあります。日本語のスタック・オーバーフローでこの質問がないようで、私の理解を下記のようにまとめてみました。もし、漏れたポイントまた、アドバスを追伸してもらえる大変ありがたいです。 MSDN更新の比較: 日本語:Web アプリケーション プロジェクトと Web サイト プロジェクト 英語:Web Application Projects versus Web Site Projects in Visual Studio 解決 気になった点を挙げてみます。 含まれる/含まれないとは? aspx, ascx が何に「含まれる」または「含まれない」のかがよくわかりませんでした。 ネームスペースの手動は Webサイトでは? ネームスペースは逆ではないでしょうか? こちらの表の Webサイトプロジェクト の名前空間に 既定では、明示的な名前空間がページ、コントロール、およびクラスに追加されませんが、手動で追加できます。 とあります。 また、msdnと表の左右どちらを Webアプリケーション / Webサイト にするか合わせた方が良いのでは? MVCが Webサイトで可能か 日本語版の冒頭のメモでは シナリオによっては、選択の余地がないこともあります。 たとえば、ASP.NET MVC アプリケーションを作成する場合、Web アプリケーション プロジェクトを使用する必要があります。 https://msdn.microsoft.com/ja-jp/library/dd547590%28v=vs.100%29.aspx とありますので、MVCが可能と言い切れるかは再考の余地があるかもしれません。 推奨されているかを表に掲載しても良いのでは 提示されている英語版で For new…(Continue Reading)

VBIDEを参照した場合、.NET Framework以外に何か必要になりますか?

投稿者: Anonymous タイトルの件、Visual Studio2015のプロジェクトで参照にVBIDEというものを加えて開発していますが、このdllは.NET Framework標準で利用できるものと考えてよろしでしょうか? (.NET Frameworkがインストールされていれば利用できますか?) 解決 「何か必要になりますか?」ではなく、ライセンスや使用方法などを考慮・検討して使用するライブラリを選定するべきだと思うのですが…? 質問文では「VBIDE」と書かれていますが、実際のライブラリの正式名称は「Microsoft Visual Basic for Applications Extensibility 5.3」と思われます。 .NETアプリケーションがCOM参照を行う場合、Tlbimp.exeを用いてCOMタイプライブラリを元に同等のアセンブリを生成します。今回の場合ファイル名はMicrosoft.Vbe.Interop.dllとなっているはずです。更に型情報の埋め込み機能により、Microsoft.Vbe.Interop.dllの中で使用している型情報だけをピックアップしてアセンブリに埋め込むことができます(Visual Studio上で操作した場合、デフォルトで埋め込まれる設定となっているはずです)。 結果的に、.NET部分に関しては追加で必要となるモジュールはありません。 ただし、本体となるCOM側の「Microsoft Visual Basic for Applications Extensibility 5.3」は別途必要です。 回答者: Anonymous

.Net 4.0 C# フォームアプリからのGPS情報取得について

投稿者: Anonymous Visual Studio 2010 C# / .Net Framework 4.0 にて、 Windows Form アプリケーションの開発を行っています。 アプリケーションの実行環境は Windows 8.1 タブレットをターゲットとしており、 機能としてはタブレットに内臓されている GPS より現在位置情報の取得を行っています。 下記 LocationInfo クラスの Get() にて緯度経度を返しているのですが、Wifiに接続されているときと、接続されていない場合で取得値に差異があります。 ※ WiFi 接続時は現在地とは全く違う場所を返してきている様です。 Windows 8 標準アプリの「地図」ではオンラインオフラインいずれの場合も正常な位置を取得できているようなのですが、Windows.Device より取得できる値と Windows.System.Device から取得できる値には違いがあるのでしょうか? また WiFi 接続時に全く違う場所が返されていることの原因としては、位置情報データベース(どこのサービス?)に登録されているアクセスポイントと経度緯度座標の情報がおかしいと考えればよいのでしょうか?これを解決する術はありますか? Wifi 接続時であっても GPS センサーの値(衛星値)のみを取得する方法はないでしょうか? デバイスに COMポートから直接アクセスを試みましたが、デバイスマネージャの COMポートのツリーには GPS デバイスは表示されておらず、センサーのツリーに表示されていました。 public class LocationInfo { private static System.Device.Location.GeoCoordinateWatcher _wtc;…(Continue Reading)

C# intercambiar minúsculas por mayúsculas y viceversa en una palabra

publicado por: Anonymous estaba realizando un ejercicio el cual se me pide que al ingresar una palabra, la salida muestra la misma pero con la diferencia que todas las minúsculas que contenía pasaran a mayúscula y las mayúsculas a minúsculas, logro hacer la conversión pero a la hora de mostrar la misma palabra pero con…(Continue Reading)

Convertir codigo java a c#

publicado por: Anonymous Buenos días. Me han pasado una aplicación de escritorio en java para convertirla a WPF (c#). No conozco mucho de java pero intuyendo lo que hace, poco a poco la he conseguido traducir a excepción de un bloque de código. El código es el siguiente: string key = “CLAVEPARACONVERSION”; string base64EncryptedString =…(Continue Reading)

IJCAD上でWindowFormを呼び出した際のTabStopについて

投稿者: Anonymous IJCAD2019を用いた.NETアプリケーションの開発をしております。 Application.ShowModelessDialog()で WindowsFormで作成したダイアログを呼び出したところ、 呼び出したダイアログ上でTabキーを押してもフォーカスが移動しませんでした。 Tabキーでのフォーカス移動を有効にするにはどうすればいいでしょうか? 各コントロールのTabStopはTrueとなっています。 public class Class1 { [CommandMethod(“Test”)] public void DoIt() { Form1 form = new Form1(); GrxCAD.ApplicationServices.Application.ShowModelessDialog(form); } } 解決 IJCADの.NET APIで作成したウインドウをモードレスで呼び出した場合、TABでフォーカスは移動されないようです。 モーダルでは大丈夫そうなので、恐らく.NET APIの不具合だと思われます。 IJCADのサポートに、APIの不具合として報告した方が良いと思われます。 余談ですが、WPFを使用して作成されたウインドウは大丈夫なようです。 この際、ShowModelessDialogでなく、ShowModelessWindowで呼び出す必要があります。 回答者: Anonymous

PromptStatusで[Enter]キー、右クリックを取得する方法

投稿者: Anonymous IJCAD2016/VB.netで開発している者です。 IJCADのCOPY、MOVEコマンド同様にドロージグを使用したコマンドを開発しているのですが、Drag(PromptStatus)で[Enter]キーおよび、右クリックでコマンドを終了させる方法がわからず調べています。 ご存知の方がいらっしゃいましたら何かアドバイスをいただければ幸いです。 以下はサンプルコードおよび参照元のULRです。 Public Sub SampleCommand() Dim icDoc As Document = Application.DocumentManager.MdiActiveDocument Dim icEd = icDoc.Editor ‘移動させるオブジェクトを選択 Dim icSelectRes As PromptSelectionResult = icEd.GetSelection() If icSelectRes.Status <> PromptStatus.OK Then Return ‘移動の基点を指定 Dim icPointRes As PromptPointResult = icEd.GetPoint(vbCrLf + “基点を指定”) If icPointRes.Status <> PromptStatus.OK Then Return Using icTrans As Transaction = icDoc.TransactionManager.StartTransaction() Dim icMoveJig…(Continue Reading)

プロジェクトで使用するライブラリを NuGet で管理する利点について

投稿者: Anonymous 去年から会社で NuGet でプロジェクト ライブラリを管理するようにし始めています。 その時特に考えたこともなくそのまま使い始めました。今日新人の方になぜ、ライブラリを直接プロジェクトにコピーして、代わりに NuGet でプロジェクト ライブラリを管理するのかを聞かれました。 えーとー。。。 頭に浮かんだ答えはもしだれかライブラリを svn にチェックインしなかったら、いちいちネットで検索してマッチするバージョンを探さなくでもいいので便利だよと答えました。でも、これ以外別の理由がないのかなぁと思ってここで質問をして見ます。もし、NuGet でプロジェクト ライブラリを管理すべきだよという理由などをご存知方、また NuGet でプロジェクト ライブラリを管理でされている開発の先輩たちからアドバイスを聞きたいです。 解決 NuGetが出てくるまでは開発拠点が分散しているときに依存ライブラリのバージョンを合わせるのが面倒だったり、環境依存ぽい動作の不整合に悩まされたりしていました(おそらくライブラリのバージョンが正しく合っていないなどの人的ミスが原因)。 NuGet導入後は、こちらできちんと動けば、あちらの開発環境下でも同様に動くということが保証しやすくなったように思います。 また、管理ライブラリはNuGetの設定ファイルさえあればビルド時に自動的に取得できるので、プロジェクトのビルドに必要なソースファイル等(svn、gitなどでの管理対象ファイル)が小さくできることも個人的には気に入っています。 回答者: Anonymous

¿Como pasar datos en DataGridView a Otro DataGridView?

publicado por: Anonymous Tengo dos DataGridView de esta manera: Lo que necesito es que los CheckBox que esten seleccionados del primer DatagridView al pulsar el Button “agregar” se pasen al segundo DataGridView.NOTA: El total del segundo DataGridView lo calculare a partir de la columna cantidad y precio (que esta oculta). De verdad ya intente de…(Continue Reading)

ILMergeで出てしまうエラーの回避

投稿者: Anonymous お世話になります。 .Netにて、生成されたexeと関連するdllを結合して、単体で起動するexeに 変換するILMergeですが、なかなかうまく変換できません。それが、 必ず失敗するのではなく、成功するときもあれば、失敗するときもあるのです。 一度成功したかと思うと、それ以降が失敗してしまいます。 下記が使用しているコマンドです。 “C:Program Files (x86)MicrosoftILMergeILMerge.exe” /targetplatform:v4  /out:”C:..A.exe” “C:…Z.exe” “C:…B.dll” その結果、下記のようなエラーが出ます。 An exception occurred during merging: ILMerge.Merge: There were errors reported in B’s metadata. The pdb associated with C:…B.dll is out of date. 場所 ILMerging.ILMerge.Merge() 場所 ILMerging.ILMerge.Main(String[] args) 必ず失敗するのならまだしも、たまに成功するのでますます解りません。 原因と対策をお教えいただけないでしょうか。 急務です。 何卒よろしくお願いします。 解決 皆様の回答、ありがとうございました。 ILMergeには、Releaseとしてマージする際には、/ndebugオプションを 付けることが解りました。 後、できれば一度プロジェクトをクリーンしてから再ビルドするほうが 良いというのも解りました。 本当にありがとうございました。 回答者:…(Continue Reading)

Guardar la conexión en app.config de manera encriptada

publicado por: Anonymous ¿Es posible guardar una cadena de conexión de app.config sin guardar el password, o de alguna manera encriptarlo, usando entity framework? Sin usar windows auntentication, osea con usuario y password. Ejemplo de conexión: <add name=”conexionEntities” connectionString=”metadata=res://*/Integration.Models.conexion.csdl|res://*/Integration.Models.conexion.ssdl|res://*/Integration.Models.conexion.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=(local);initial catalog=db_ejemplo;user id=sa;password=123456789;multipleactiveresultsets=True;App=EntityFramework&quot;” providerName=”System.Data.EntityClient” /> password=123456789 <– este dato es el que no me…(Continue Reading)

.Net CoreにおけるLinuxのメモリ使用量について

投稿者: Anonymous お世話になります。 .Net Core2.1で作ったアプリをAzure AppService on LinuxでWebサービスを運用しているのですが、Azure AppServiceのWindowsサーバーで運用していたときと比べメモリ使用量が平均で10〜20%増加しました。どちらもB1インスタンスなので全く同じスペックですし、サーバーを変えてからアプリケーションの変更は行なっていません。CPUの使用量は全く同じなので変動はありませんでした。 .Net CoreはLinuxサーバーだと若干メモリ使用量が増えるのでしょうか? 解決 使用するライブラリーによりますが、Linuxサーバーだとメモリ使用量が増える場合が多いです。Windowsの方で主に開発されているソフトなので仕方がないと思います。処理速度も.Net Core2.0まではLinuxサーバーの方がはっきり遅かったですが、.Net Core2.1でかなり改善されました。 .NET Core は、windowsとLinuxでは実装に違いがあります。 参考: https://www.slideshare.net/tanakata/20170527-inside-net-core-on-linux 回答者: Anonymous

windows10 IoT coreでサポートする.Netのバージョンについて

投稿者: Anonymous windows10 IoT coreでサポートされている.Netはどのバージョンになるのでしょうか? サンプルコードを見る限り.Netが使えるらしいことは分かるのですが・・・ 単純な質問で申し訳無いですが、調べても言及されているページ見つけられませんでした。 よろしくお願いします 解決 Windows IoT Core で動くのはUWP, Universal Windows Platformアプリケーションです。 デスクトップの.NET Frameworkとは提供されている名前空間が異なります。.NET Coreと言われるものです。 https://msdn.microsoft.com/ja-jp/library/mt185501.aspx バージョン,というと少し難しいのですが,フレームワークの機能はNuGetパッケージで細分化されて提供されています。機能毎に細かくアップデートが行われています。 https://msdn.microsoft.com/ja-jp/magazine/mt590967.aspx 回答者: Anonymous

ASP.NETでAjaxControlToolkitでToolkitScriptManagerが不明な要素エラーとでる

投稿者: Anonymous AjaxControlToolkitを使おうとしてエラーになるのですが、解決方法をご存じの方がいましたらお願いします。 最新のインストーラでVisualStudio2013にインストールしました。 アプリケーションはASP.NETフォームアプリケーションを空から作成しているものです。 プロジェクトの参照設定の配下にはAjaxControlToolkitが存在しています。 <%@ Register Assembly=”AjaxControlToolkit” Namespace=”AjaxControlToolkit” TagPrefix=”asp” %> 中略 <asp:TextBox ID=”TextBox1″ runat=”server”></asp:TextBox> <asp:CalendarExtender ID=”TextBox1_CalendarExtender” runat=”server” Enabled=”True” TargetControlID=”TextBox1″></asp:CalendarExtender> <asp:ToolkitScriptManager ID=”ToolkitScriptManager1″ runat=”server”> </asp:ToolkitScriptManager> エラー。 型または名前空間名 ‘ToolkitScriptManager’ は名前空間 ‘AjaxControlToolkit’ に存在しません。アセンブリ参照が不足しています。 ページのデザイナーの一番したのToolkitScriptManagerに赤線が引かれていてエラーになっています。その前のCalendarExtenderはなぜかエラーになっていないです。 /// <summary> /// TextBox1 コントロール。 /// </summary> /// <remarks> /// 自動生成されたフィールド。 /// 変更するには、フィールドの宣言をデザイナー ファイルから分離コード ファイルに移動します。 /// </remarks> protected global::System.Web.UI.WebControls.TextBox TextBox1; /// <summary> ///…(Continue Reading)

C#で作成したアプリ同士の通信

投稿者: Anonymous C#で作成したアプリ同士の通信に、普段TCP/IPを使用して 電文をやりとりしていますが 同一PC内でアプリ間で通信をするさい、 C#では、何を使用するのが一般的なのでしょうか 理想を言えば A.exe/B.extがあった場合に A.extからB.exeの内部の関数(イベント)をコール出来れば理想的ではあるのですが 解決 一般的かどうかは分かりませんが、私ならWCF (Windows Communication Foundation)を使用します。 バインディングに名前付きパイプを使用し、コールバックコントラクトを定義すれば簡単に型付きで双方向通信が実装可能です。 まず関係プロジェクトにSystem.ServiceModel.dllの参照を追加してから、通信に使用するインターフェイスを定義します。この時型にはServiceContractAttributeを、メソッドにはOperationContractを指定します。 // using System.ServiceModel; // ホスト側 [ServiceContract(CallbackContract = typeof(ICallback))] internal interface IHost { [OperationContract(IsOneWay = true)] void SendHost(string message); } // クライアント側 [ServiceContract] internal interface ICallback { [OperationContract(IsOneWay = true)] void SendClient(string message); } 次に、各インターフェイスを実装します。 public class Host : IHost…(Continue Reading)

事前選択で選択フィルターを使用したい

投稿者: Anonymous IJCAD2018でC#を使用して開発をしています。 事前選択で選択フィルターを適用した選択結果を取得したいのですが、用意されているCADの.Net APIに該当する機能が見つかりませんでした。 SelectImpliedに選択フィルターが設定できればよいのですが、オプションを指定することができませんでした。 該当等する機能か回避方法があればご教示をお願いいたします。 [CommandMethod(“test”, CommandFlags.Session | CommandFlags.UsePickSet)] public static void Test() { SelectionSet ss; SelectPick(out ss); } // 事前選択の結果を取得 public static void SelectPick(out SelectionSet dst) { dst = null; // 選択フィルタ作成 var selFilter = new SelectionFilter(new [] { new TypedValue((int)DxfCode.Operator, “<OR”), new TypedValue((int)DxfCode.Start, “INSERT”), new TypedValue((int)DxfCode.Start, “LINE”), new TypedValue((int)DxfCode.Operator, “OR>”), });…(Continue Reading)

.NETのIntptr構造体に関する質問です。

投稿者: Anonymous .NETのIntptr構造体に関する質問です。 C#でポインタを利用する際、Marshal.AllocHGlobalでメモリ領域を確保しMarshal.FreeHGlobalで確保した領域を解放しますが、Marshal.AllocHGlobalで確保された領域はガベージコレクションで自動的に解放されないのですか? 解決 解放されません。 https://docs.microsoft.com/ja-jp/dotnet/api/system.runtime.interopservices.marshal.allochglobal 解説を読むうえで重要なキーワードは「マネージ」「アンマネージ」で、 マネージ .NET Framework の管理下にあって、オブジェクトが自動 gc されるもの。 c# や visualbasic で new するとこっち。マネージメモリを Visual C/C++ native DLL に直接渡すことはできない。 アンマネージ .NET Framework の管理下にないもの。端的には Win32 Native なコードやメモリのこと。つまり Visual C/C++ で書いたコードや、直接使えるメモリのこと。アンマネージのほうが歴史的に古い存在なので、マネージコードからアンマネージコードを呼び出す際に「マーシャリング」することで、間接的にマネージコードからアンマネージメモリを使うことはできるようになっている(マーシャラの性能が高いかと問われると微妙かも) この件、マニュアルにきっちり「アンマネージ」と明記されていますので gc 対象にはならないと読めます。すなわち、自分で Marshal.FreeHGlobal する必要があります。 回答者: Anonymous

WPFのプロジェクトでリファレンス情報の保存される場所について

投稿者: Anonymous mshtmlを使用するためにソリューションエクスプローラーからAdd ReferencesでMicrosoft.mshtmlへのリファレンスを追加しました。 このリファレンスを追加した時にどのファイルが変更されているか気になってプロジェクト内のファイルをack mshtmlで検索してみたのですが該当のテキストが見つかりませんでした。 追加されたリファレンス情報はどのファイルにどのように保存されているのでしょうか? 解決 正しい操作ではありません。COM – Type Librariesの一覧からMicrosoft HTML Object Libraryを選択するべきです。 .NETではタイプライブラリを直接扱うことはできません。そのため、Visual Studioは内部でTlbimp.exe (タイプ ライブラリ インポーター)を実行し、タイプライブラリと同等なアセンブリを生成した後に、生成されたアセンブリをプロジェクトに追加します。 しかし、このような操作でアセンブリが乱立するのは危険です。そこで.NETではプライマリ相互運用機能アセンブリという機能を提供しています。その上でMicrosoft HTML Object LibraryにはMicrosoft.mshtmlという名前でプライマリ相互運用機能アセンブリが登録されています。 最終的にMicrosoft HTML Object Libraryを選択するとプロジェクトファイル(.csproj)には <ItemGroup> <COMReference Include=”MSHTML”> <Guid>{3050F1C5-98B5-11CF-BB82-00AA00BDCE0B}</Guid> <VersionMajor>4</VersionMajor> <VersionMinor>0</VersionMinor> <Lcid>0</Lcid> <WrapperTool>primary</WrapperTool> <Isolated>False</Isolated> <EmbedInteropTypes>True</EmbedInteropTypes> </COMReference> </ItemGroup> という設定が追加されます。{3050F1C5-98B5-11CF-BB82-00AA00BDCE0B}とはMicrosoft HTML Object LibraryのタイプライブラリのID(LIBID)です。 レジストリエディタでHKEY_CLASSES_ROOTTypeLib{3050F1C5-98B5-11CF-BB82-00AA00BDCE0B}4.0を参照すると Microsoft HTML Object Library Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a が登録されていることが確認できます。 回答者:…(Continue Reading)

IJCADでC#で新規図面を開こうとすると「AutoCAD Mechanical Unknown形式図面です」。と警告が表示される

投稿者: Anonymous 現在IJCAD2018を使用してC#で開発を行っております。 機能の1つに図面を作図して保存する機能があるのですが、 保存が完了した後に終了ボタンを押下して図面を閉じると ドキュメントが0枚になることがあるので DocumentCollection acDocMgr = Application.DocumentManager; Document acDoc = acDocMgr.Add(); として新規図面を開く処理があるのですが、 このAddメソッドで図面を開く時に 「この図面はAutoCAD Mechanical Unknown形式図面です。」という警告が表示されています。 この警告を表示させないようにする方法を教えて頂けないでしょうか。 追記 Addメソッドで開こうとしている図面はAutoCAD2013形式で保存されている図面です。 解決 CADが対応していないAutoCAD Mechanicalのバージョンの図面を、開こうとしている為警告が表示されていると思われます。 https://support.ijcad.jp/hc/ja/articles/360000174142 確認ですが使用しているIJCADはメカニカルでしょうか? 例えば、IJCA DMechanical 2018 で AutoCAD Mechanical 2018形式で保存された図面を、 Add メソッドで開こうとするとイメージのような警告が表示されます。 通常のIJCAD2018ではメカニカル形式の図面を開いても警告は表示されないと思います。 (メカニカル特有のオブジェクトはACAD PROXY ENTITYとして扱われます。) AutoCAD2013形式で保存されている図面であれば警告が表示されないと思いますが、開こうとしている図面がどのようなものかを確認することができませんので、一度IJCADのサポートに問題の図面を送ってみては如何でしょうか? 回答者: user30469

VisualStudio, C# .NET FrameworkでMySQL Connector/Netを用いてデータベースに接続する方法

投稿者: Anonymous 初めてVisualStudio, C# .NET Frameworkを使用します。 VisualStudio, C# .NET Frameworkで、 MySQL Connector/Netを用いてデータベースに接続し、テーブル内のデータを表示させてたいと考えています。 他の方のやり方を参考にやってみているのですが、 以下の方法では MySqlConnection conn = new MySqlConnection(connstr); 部分にエラーだ出てしまい困っております。 アドバイス頂けると幸いです。 ※練習用のため、vegrantを用いて仮想のローカールサーバーです。 ここまで行ったこと: 基本的に以下のサイトをトレースしました。 http://web.sfc.wide.ad.jp/~tinaba/tutorials/mysql-net/ MySQL Connector/NetはPCに落としただけで セットアップなどはとくになにも行っておりません。 (他にセットアップが必要な場合は教えて頂けると幸いです。) VSでFormプロジェクトを作成しMySQL.Dataを参照から追加し、 ボタンの動作を以下で定義しました。 コード: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using MySql.Data.MySqlClient; namespace WindowsFormsApp1 {…(Continue Reading)

Problema con imágenes en proyectos publicados c#

publicado por: Anonymous Tengo un proyecto en su fase final, en una parte tengo que recuperar el nombre de una imagen de la base de datos, y en base a este nombre busco en la carpeta Resources el nombre de esa imagen, y la muestra en un picturebox. Las imágenes las añadí mediante el diseñador,…(Continue Reading)

C#で作成したプログラム内部からVC++のDLLをWindows10だと呼び出せなくなる

投稿者: Anonymous Windows7で作成したプログラムがWindows10では動作しなくなりました(Windows7では動作します) C#からVC++(どちらも32bitでビルド)で作成されたDLLをDllImportで呼び出していたのですが エラーを調べていたら DLL ‘XXX.dll’ を読み込めません:指定されたモジュールが見つかりません。 (HRESULT からの例外:0x8007007E) というエラーになりました 単純に [DllImport(“xxx.dll”, EntryPoint = “foofoo”, CallingConvention = CallingConvention.Cdecl)] public extern static uint FooFoo(); として呼び出しているだけなのですが・・・・ C#のexeとVC++のdllは同じフォルダに配置しています c#のVisual Studioは2013UPDATE5(.NETのターゲットバージョン4.5としてビルド) VC++のVisual Studioは2008SP1 ランタイムが足りないのかと思い、Windows10にVC++2008SP1のランタイムも手動で入れてみたのですが同じエラーメッセージのままでした エラーメッセージは単純にxxx.dllを見つけられないだけのようですが 他にはどのように原因が考えられるでしょうか 解決 C++で作成されたDLLが、依存しているDLLがない場合にも同様のエラーとなります。 Dependency Walkerで必要なDLLを調べてみてください。 よくあるのがVCruntimeのいれ忘れ、x86x64のいれ間違いです。 回答者: Anonymous

ContextMenuOpening内で原因となったContextMenuを区別したい

投稿者: Anonymous ListBoxとListBoxItemにそれぞれContextMenuを設定し、項目と項目外で別のコンテキストメニューを開くようにしています。 このとき、ListBoxItemのコンテキストメニューを開いたときにListBoxのContextMenuOpeningイベントも同時に呼ばれてしまいます。 イベント内でどのContextMenuが開かれたのかを区別する方法はありますでしょうか。 再現コード <Window x:Class=”ContextMenuTest.MainWindow” xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation” xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml” xmlns:d=”http://schemas.microsoft.com/expression/blend/2008″ xmlns:mc=”http://schemas.openxmlformats.org/markup-compatibility/2006″ xmlns:local=”clr-namespace:ContextMenuTest” mc:Ignorable=”d” Title=”MainWindow” Height=”450″ Width=”800″> <Grid> <ListBox ItemsSource=”{Binding Items}” ContextMenuOpening=”ListBox_ContextMenuOpening”> <ListBox.ItemContainerStyle> <Style TargetType=”ListBoxItem”> <EventSetter Event=”ContextMenuOpening” Handler=”ListBoxItem_ContextMenuOpening” /> <Setter Property=”ContextMenu”> <Setter.Value> <ContextMenu> <MenuItem Header=”ItemMenu” /> </ContextMenu> </Setter.Value> </Setter> </Style> </ListBox.ItemContainerStyle> <ListBox.ContextMenu> <ContextMenu> <MenuItem Header=”ListBoxMenu” /> </ContextMenu> </ListBox.ContextMenu> </ListBox> </Grid> </Window> using System.Diagnostics; using System.Windows;…(Continue Reading)

Cambiar a negrita un string de una cadena

publicado por: Anonymous Estoy haciendo un programa en VB y tengo una cadena de texto, la cual la agrego a un RichTextBox, pero quiero agregarle algunas cosas. Lo que quiero lograr es que el texto sea como el siguiente: “Más de la mayoría de las mediciones que se realizaron de la presión del domo sobrepasan…(Continue Reading)

ListBoxの背景にDrap&Dropする際にDrop先Indexを計算するには?

投稿者: Anonymous ListBox上のListBoxItem、またはListBox上のListBox.Backgroundが見えている領域に対してDrag&Dropを行い、要素の並べ替え/挿入を行おうとしています。 この時、ListBoxの背景要素にDropした際、Dropした位置によって適切な挿入先のIndexを計算する方法が分からず、詰まってしまっています。 – 出来たこと ListBox上のListBoxItemに対するDropは、DragEventArgs.OriginalSourceを使って現在Dropしようとしている先のFrameworkElementを特定→ListBox.ItemsSourceからDataContextの内容で探す……などの方法でDrop先Indexを計算する事ができました。 – 出来なくて困っていること(知りたいこと) ListBox上のDrop位置において、以下の図のような領域⇔Index値となる計算をしたいのですが、以下の3点を計算・区別する方法が分かりませんでした。 ListBoxItem間のMarginの位置へのDrop時のIndex計算 WrapPanelでの折り返し位置(図上のIndex 4の位置)へのDrop時のIndex計算 1,2に含まれない末尾全般領域(図上のIndex 6の位置)へのDrop時のIndex計算 実現方法が分かる方、よろしくお願いします。 解決 泥臭い解法ですが…ListBoxItemの領域を左上から順に取得し、マウス座標の手前にあるかどうかを判定する方法で実装できます。 下記のサンプルコードでは、GetNextItemメソッドでマウス座標直後にあるListBoxItemを取得し、リスト内のインデックスはMoveItemメソッド内のIList.IndexOfで取得しています。 MainWindow.xaml.cs using System.Collections; using System.Collections.Generic; using System.Linq; using System.Windows; using System.Windows.Controls; using System.Windows.Input; using System.Windows.Media; namespace WpfApplication1 { /// <summary> /// MainWindow.xaml の相互作用ロジック /// </summary> public partial class MainWindow : Window { private ListBoxItem DropTarget; public…(Continue Reading)